diff --git a/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Additional.cs b/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Additional.cs index 968446ba5..8db4cdbbf 100644 --- a/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Additional.cs +++ b/src/IdentityServer/Configuration/DependencyInjection/BuilderExtensions/Additional.cs @@ -492,6 +492,7 @@ public static IHttpClientBuilder AddJwtRequestUriHttpClient(this IIdentityServer /// /// The builder. /// + [Obsolete("This feature is deprecated. Consider using Pushed Authorization Requests instead.")] public static IIdentityServerBuilder AddAuthorizationParametersMessageStore(this IIdentityServerBuilder builder) where T : class, IAuthorizationParametersMessageStore { diff --git a/src/IdentityServer/Endpoints/Results/AuthorizeInteractionPageResult.cs b/src/IdentityServer/Endpoints/Results/AuthorizeInteractionPageResult.cs index 429c995a3..0ea7df81e 100644 --- a/src/IdentityServer/Endpoints/Results/AuthorizeInteractionPageResult.cs +++ b/src/IdentityServer/Endpoints/Results/AuthorizeInteractionPageResult.cs @@ -74,9 +74,12 @@ public async Task WriteHttpResponse(AuthorizeInteractionPageResult result, HttpC { var returnUrl = _urls.BasePath.EnsureTrailingSlash() + ProtocolRoutePaths.AuthorizeCallback; + // IAuthorizationParametersMessageStore is deprecated and will be removed someday if (_authorizationParametersMessageStore != null) { +#pragma warning disable CS0618 // Type or member is obsolete var msg = new Message>(result.Request.ToOptimizedFullDictionary()); +#pragma warning restore CS0618 // Type or member is obsolete var id = await _authorizationParametersMessageStore.WriteAsync(msg); returnUrl = returnUrl.AddQueryString(Constants.AuthorizationParamsStore.MessageStoreIdParameterName, id); } diff --git a/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs b/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs index 8b416480f..a43f42bde 100644 --- a/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs +++ b/src/IdentityServer/Extensions/ValidatedAuthorizeRequestExtensions.cs @@ -187,6 +187,7 @@ public static string ToOptimizedQueryString(this ValidatedAuthorizeRequest reque return request.ToOptimizedRawValues().ToQueryString(); } + [Obsolete("This method is obsolete and will be removed in a future version.")] public static IDictionary ToOptimizedFullDictionary(this ValidatedAuthorizeRequest request) { return request.ToOptimizedRawValues().ToFullDictionary(); diff --git a/test/IdentityServer.UnitTests/Extensions/ValidatedAuthorizeRequestExtensionsTests.cs b/test/IdentityServer.UnitTests/Extensions/ValidatedAuthorizeRequestExtensionsTests.cs index 52a6f95b3..dae84bb5e 100644 --- a/test/IdentityServer.UnitTests/Extensions/ValidatedAuthorizeRequestExtensionsTests.cs +++ b/test/IdentityServer.UnitTests/Extensions/ValidatedAuthorizeRequestExtensionsTests.cs @@ -2,6 +2,7 @@ // See LICENSE in the project root for license information. +using System; using Duende.IdentityServer.Validation; using IdentityModel; using Xunit; @@ -29,6 +30,7 @@ public void GetAcrValues_should_return_snapshot_of_values() } [Fact] + [Obsolete] public void ToOptimizedFullDictionary_should_return_dictionary_with_array_for_repeated_keys_when_request_objects_are_used() { var request = new ValidatedAuthorizeRequest()