@@ -9,7 +9,7 @@ This upgrade guide covers upgrading from Duende IdentityServer v7.2 to v7.3 ([re
99
1010IdentityServer 7.3.0 is a significant release that includes:
1111
12- - [ FAPI 2.0 Security Profile] ( https://openid.net/specs/fapi-security-profile-2_0-final.html ) certification
12+ - [ FAPI 2.0 Security Profile] [ 1 ] certification
1313- JWT Response from the introspection endpoint ([ RFC 9701] ( https://www.rfc-editor.org/rfc/rfc9701.html ) )
1414- Diagnostic data
1515- Removal of the experimental label from OpenTelemetry metrics
@@ -63,6 +63,64 @@ https://github.com/DuendeSoftware/products/pull/1796
6363Several [ OpenTelemetry metrics] ( /identityserver/diagnostics/otel.md#detailed-metrics ) previously created by the meter named
6464"Duende.IdentityServer.Experimental" have been moved to the "Duende.IdentityServer" meter.
6565
66+ #### Default Supported Signing Algorithms Have Changed For Client Assertions And Request Objects
67+
68+ To support the [ FAPI 2.0 Security Profile] [ 1 ] , we've added new options to configure the supported signing algorithms for
69+ client assertions and request objects, and only included asymmetric algorithms by default. Before this release, all
70+ signing algorithms were supported, including the symmetric algorithms ` HS256 ` , ` HS384 ` , and ` HS512 ` .
71+
72+ If you're using symmetric keys to sign client assertions or request objects, you can restore the previous behavior by adding the
73+ following code to your IdentityServer configuration:
74+
75+ ``` csharp title="Program.cs" {4,18-20,24,38-40}
76+ builder .Services .AddIdentityServer (options =>
77+ {
78+ // To re-enable symmetric algorithms for signing client assertions:
79+ options .SupportedClientAssertionSigningAlgorithms =
80+ [
81+ SecurityAlgorithms .RsaSha256 ,
82+ SecurityAlgorithms .RsaSha384 ,
83+ SecurityAlgorithms .RsaSha512 ,
84+
85+ SecurityAlgorithms .RsaSsaPssSha256 ,
86+ SecurityAlgorithms .RsaSsaPssSha384 ,
87+ SecurityAlgorithms .RsaSsaPssSha512 ,
88+
89+ SecurityAlgorithms .EcdsaSha256 ,
90+ SecurityAlgorithms .EcdsaSha384 ,
91+ SecurityAlgorithms .EcdsaSha512 ,
92+
93+ SecurityAlgorithms .HmacSha256 ,
94+ SecurityAlgorithms .HmacSha384 ,
95+ SecurityAlgorithms .HmacSha512
96+ ];
97+
98+ // To re-enable symmetric algorithms for signing request objects:
99+ options .SupportedRequestObjectSigningAlgorithms =
100+ [
101+ SecurityAlgorithms .RsaSha256 ,
102+ SecurityAlgorithms .RsaSha384 ,
103+ SecurityAlgorithms .RsaSha512 ,
104+
105+ SecurityAlgorithms .RsaSsaPssSha256 ,
106+ SecurityAlgorithms .RsaSsaPssSha384 ,
107+ SecurityAlgorithms .RsaSsaPssSha512 ,
108+
109+ SecurityAlgorithms .EcdsaSha256 ,
110+ SecurityAlgorithms .EcdsaSha384 ,
111+ SecurityAlgorithms .EcdsaSha512 ,
112+
113+ SecurityAlgorithms .HmacSha256 ,
114+ SecurityAlgorithms .HmacSha384 ,
115+ SecurityAlgorithms .HmacSha512
116+ ];
117+ });
118+ ```
119+
120+ https://github.com/DuendeSoftware/products/pull/2077
121+
66122## Step 3: Done!
67123
68124That's it. Of course, at this point you can and should test that your IdentityServer is updated and working properly.
125+
126+ [ 1 ] : https://openid.net/specs/fapi-security-profile-2_0-final.html
0 commit comments