Class IdentityServerBuilderExtensionsCrypto
- Namespace
- Microsoft.Extensions.DependencyInjection
- Assembly
- Duende.IdentityServer.dll
Builder extension methods for registering crypto services
public static class IdentityServerBuilderExtensionsCrypto
- Inheritance
-
IdentityServerBuilderExtensionsCrypto
- Inherited Members
Methods
AddDeveloperSigningCredential(IIdentityServerBuilder, bool, string?, RsaSigningAlgorithm)
Sets the temporary signing credential.
public static IIdentityServerBuilder AddDeveloperSigningCredential(this IIdentityServerBuilder builder, bool persistKey = true, string? filename = null, IdentityServerConstants.RsaSigningAlgorithm signingAlgorithm = RsaSigningAlgorithm.RS256)
Parameters
builder
IIdentityServerBuilderThe builder.
persistKey
boolSpecifies if the temporary key should be persisted to disk.
filename
stringThe filename.
signingAlgorithm
IdentityServerConstants.RsaSigningAlgorithmThe signing algorithm (defaults to RS256)
Returns
AddSigningCredential(IIdentityServerBuilder, ECDsaSecurityKey, ECDsaSigningAlgorithm)
Sets an ECDsa-based signing credential.
public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBuilder builder, ECDsaSecurityKey key, IdentityServerConstants.ECDsaSigningAlgorithm signingAlgorithm)
Parameters
builder
IIdentityServerBuilderThe builder.
key
ECDsaSecurityKeyThe ECDsa key.
signingAlgorithm
IdentityServerConstants.ECDsaSigningAlgorithmThe signing algorithm
Returns
AddSigningCredential(IIdentityServerBuilder, RsaSecurityKey, RsaSigningAlgorithm)
Sets an RSA-based signing credential.
public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBuilder builder, RsaSecurityKey key, IdentityServerConstants.RsaSigningAlgorithm signingAlgorithm)
Parameters
builder
IIdentityServerBuilderThe builder.
key
RsaSecurityKeyThe RSA key.
signingAlgorithm
IdentityServerConstants.RsaSigningAlgorithmThe signing algorithm
Returns
AddSigningCredential(IIdentityServerBuilder, SecurityKey, string)
Sets the signing credential.
public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBuilder builder, SecurityKey key, string signingAlgorithm)
Parameters
builder
IIdentityServerBuilderThe builder.
key
SecurityKeyThe key.
signingAlgorithm
stringThe signing algorithm
Returns
AddSigningCredential(IIdentityServerBuilder, SigningCredentials)
Sets the signing credential.
public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBuilder builder, SigningCredentials credential)
Parameters
builder
IIdentityServerBuilderThe builder.
credential
SigningCredentialsThe credential.
Returns
AddSigningCredential(IIdentityServerBuilder, X509Certificate2, string)
Sets the signing credential.
public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBuilder builder, X509Certificate2 certificate, string signingAlgorithm = "RS256")
Parameters
builder
IIdentityServerBuilderThe builder.
certificate
X509Certificate2The certificate.
signingAlgorithm
stringThe signing algorithm (defaults to RS256)
Returns
Exceptions
- ArgumentNullException
- InvalidOperationException
X509 certificate does not have a private key.
AddSigningCredential(IIdentityServerBuilder, string, StoreLocation, NameType, string)
Sets the signing credential.
public static IIdentityServerBuilder AddSigningCredential(this IIdentityServerBuilder builder, string name, StoreLocation location = StoreLocation.LocalMachine, NameType nameType = NameType.SubjectDistinguishedName, string signingAlgorithm = "RS256")
Parameters
builder
IIdentityServerBuilderThe builder.
name
stringThe name.
location
StoreLocationThe location.
nameType
NameTypeName parameter can be either a distinguished name or a thumbprint
signingAlgorithm
stringThe signing algorithm (defaults to RS256)
Returns
Exceptions
- InvalidOperationException
certificate: '{name}'
AddValidationKey(IIdentityServerBuilder, params SecurityKeyInfo[])
Adds the validation keys.
public static IIdentityServerBuilder AddValidationKey(this IIdentityServerBuilder builder, params SecurityKeyInfo[] keys)
Parameters
builder
IIdentityServerBuilderThe builder.
keys
SecurityKeyInfo[]The keys.
Returns
AddValidationKey(IIdentityServerBuilder, ECDsaSecurityKey, ECDsaSigningAlgorithm)
Adds an ECDSA-based validation key.
public static IIdentityServerBuilder AddValidationKey(this IIdentityServerBuilder builder, ECDsaSecurityKey key, IdentityServerConstants.ECDsaSigningAlgorithm signingAlgorithm = ECDsaSigningAlgorithm.ES256)
Parameters
builder
IIdentityServerBuilderThe builder.
key
ECDsaSecurityKeyThe ECDSA key
signingAlgorithm
IdentityServerConstants.ECDsaSigningAlgorithmThe ECDSA-based signing algorithm
Returns
AddValidationKey(IIdentityServerBuilder, RsaSecurityKey, RsaSigningAlgorithm)
Adds an RSA-based validation key.
public static IIdentityServerBuilder AddValidationKey(this IIdentityServerBuilder builder, RsaSecurityKey key, IdentityServerConstants.RsaSigningAlgorithm signingAlgorithm = RsaSigningAlgorithm.RS256)
Parameters
builder
IIdentityServerBuilderThe builder.
key
RsaSecurityKeyThe RSA key
signingAlgorithm
IdentityServerConstants.RsaSigningAlgorithmThe RSA-based signing algorithm
Returns
AddValidationKey(IIdentityServerBuilder, X509Certificate2, string)
Adds the validation key.
public static IIdentityServerBuilder AddValidationKey(this IIdentityServerBuilder builder, X509Certificate2 certificate, string signingAlgorithm = "RS256")
Parameters
builder
IIdentityServerBuilderThe builder.
certificate
X509Certificate2The certificate.
signingAlgorithm
stringThe signing algorithm
Returns
Exceptions
AddValidationKey(IIdentityServerBuilder, string, StoreLocation, NameType, string)
Adds the validation key from the certificate store.
public static IIdentityServerBuilder AddValidationKey(this IIdentityServerBuilder builder, string name, StoreLocation location = StoreLocation.LocalMachine, NameType nameType = NameType.SubjectDistinguishedName, string signingAlgorithm = "RS256")
Parameters
builder
IIdentityServerBuilderThe builder.
name
stringThe name.
location
StoreLocationThe location.
nameType
NameTypeName parameter can be either a distinguished name or a thumbprint
signingAlgorithm
stringThe signing algorithm