Browse Source

Add new builder methods for registering multiple certificates and keys at once

pull/2236/head
Ionite 1 year ago
committed by GitHub
parent
commit
c479b5cbda
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 60
      src/OpenIddict.Client/OpenIddictClientBuilder.cs
  2. 60
      src/OpenIddict.Server/OpenIddictServerBuilder.cs
  3. 60
      src/OpenIddict.Validation/OpenIddictValidationBuilder.cs

60
src/OpenIddict.Client/OpenIddictClientBuilder.cs

@ -180,6 +180,21 @@ public sealed class OpenIddictClientBuilder
throw new InvalidOperationException(SR.GetResourceString(SR.ID0056));
}
/// <summary>
/// Registers multiple encryption keys.
/// </summary>
/// <param name="keys">The security keys.</param>
/// <returns>The <see cref="OpenIddictClientBuilder"/> instance.</returns>
public OpenIddictClientBuilder AddEncryptionKeys(IEnumerable<SecurityKey> keys)
{
if (keys is null)
{
throw new ArgumentNullException(nameof(keys));
}
return keys.Aggregate(this, static (builder, key) => builder.AddEncryptionKey(key));
}
/// <summary>
/// Registers (and generates if necessary) a user-specific development encryption certificate.
@ -495,6 +510,21 @@ public sealed class OpenIddictClientBuilder
.OfType<X509Certificate2>()
.SingleOrDefault() ?? throw new InvalidOperationException(SR.GetResourceString(SR.ID0066)));
}
/// <summary>
/// Registers multiple encryption certificates.
/// </summary>
/// <param name="certificates">The encryption certificates.</param>
/// <returns>The <see cref="OpenIddictClientBuilder"/> instance.</returns>
public OpenIddictClientBuilder AddEncryptionCertificates(IEnumerable<X509Certificate2> certificates)
{
if (certificates is null)
{
throw new ArgumentNullException(nameof(certificates));
}
return certificates.Aggregate(this, static (builder, certificate) => builder.AddEncryptionCertificate(certificate));
}
/// <summary>
/// Registers signing credentials.
@ -567,6 +597,21 @@ public sealed class OpenIddictClientBuilder
throw new InvalidOperationException(SR.GetResourceString(SR.ID0068));
}
/// <summary>
/// Registers multiple signing keys.
/// </summary>
/// <param name="keys">The signing keys.</param>
/// <returns>The <see cref="OpenIddictClientBuilder"/> instance.</returns>
public OpenIddictClientBuilder AddSigningKeys(IEnumerable<SecurityKey> keys)
{
if (keys is null)
{
throw new ArgumentNullException(nameof(keys));
}
return keys.Aggregate(this, static (builder, key) => builder.AddSigningKey(key));
}
/// <summary>
/// Registers (and generates if necessary) a user-specific development signing certificate.
@ -910,6 +955,21 @@ public sealed class OpenIddictClientBuilder
.OfType<X509Certificate2>()
.SingleOrDefault() ?? throw new InvalidOperationException(SR.GetResourceString(SR.ID0066)));
}
/// <summary>
/// Registers multiple signing certificates.
/// </summary>
/// <param name="certificates">The signing certificates.</param>
/// <returns>The <see cref="OpenIddictClientBuilder"/> instance.</returns>
public OpenIddictClientBuilder AddSigningCertificates(IEnumerable<X509Certificate2> certificates)
{
if (certificates is null)
{
throw new ArgumentNullException(nameof(certificates));
}
return certificates.Aggregate(this, static (builder, certificate) => builder.AddSigningCertificate(certificate));
}
/// <summary>
/// Adds a new client registration.

60
src/OpenIddict.Server/OpenIddictServerBuilder.cs

@ -189,6 +189,21 @@ public sealed class OpenIddictServerBuilder
throw new InvalidOperationException(SR.GetResourceString(SR.ID0056));
}
/// <summary>
/// Registers multiple encryption keys.
/// </summary>
/// <param name="keys">The security keys.</param>
/// <returns>The <see cref="OpenIddictServerBuilder"/> instance.</returns>
public OpenIddictServerBuilder AddEncryptionKeys(IEnumerable<SecurityKey> keys)
{
if (keys is null)
{
throw new ArgumentNullException(nameof(keys));
}
return keys.Aggregate(this, static (builder, key) => builder.AddEncryptionKey(key));
}
/// <summary>
/// Registers (and generates if necessary) a user-specific development encryption certificate.
@ -504,6 +519,21 @@ public sealed class OpenIddictServerBuilder
.OfType<X509Certificate2>()
.SingleOrDefault() ?? throw new InvalidOperationException(SR.GetResourceString(SR.ID0066)));
}
/// <summary>
/// Registers multiple encryption certificates.
/// </summary>
/// <param name="certificates">The encryption certificates.</param>
/// <returns>The <see cref="OpenIddictServerBuilder"/> instance.</returns>
public OpenIddictServerBuilder AddEncryptionCertificates(IEnumerable<X509Certificate2> certificates)
{
if (certificates is null)
{
throw new ArgumentNullException(nameof(certificates));
}
return certificates.Aggregate(this, static (builder, certificate) => builder.AddEncryptionCertificate(certificate));
}
/// <summary>
/// Registers signing credentials.
@ -576,6 +606,21 @@ public sealed class OpenIddictServerBuilder
throw new InvalidOperationException(SR.GetResourceString(SR.ID0068));
}
/// <summary>
/// Registers multiple signing keys.
/// </summary>
/// <param name="keys">The signing keys.</param>
/// <returns>The <see cref="OpenIddictServerBuilder"/> instance.</returns>
public OpenIddictServerBuilder AddSigningKeys(IEnumerable<SecurityKey> keys)
{
if (keys is null)
{
throw new ArgumentNullException(nameof(keys));
}
return keys.Aggregate(this, static (builder, key) => builder.AddSigningKey(key));
}
/// <summary>
/// Registers (and generates if necessary) a user-specific development signing certificate.
@ -920,6 +965,21 @@ public sealed class OpenIddictServerBuilder
.OfType<X509Certificate2>()
.SingleOrDefault() ?? throw new InvalidOperationException(SR.GetResourceString(SR.ID0066)));
}
/// <summary>
/// Registers multiple signing certificates.
/// </summary>
/// <param name="certificates">The signing certificates.</param>
/// <returns>The <see cref="OpenIddictServerBuilder"/> instance.</returns>
public OpenIddictServerBuilder AddSigningCertificates(IEnumerable<X509Certificate2> certificates)
{
if (certificates is null)
{
throw new ArgumentNullException(nameof(certificates));
}
return certificates.Aggregate(this, static (builder, certificate) => builder.AddSigningCertificate(certificate));
}
/// <summary>
/// Enables authorization code flow support. For more information

60
src/OpenIddict.Validation/OpenIddictValidationBuilder.cs

@ -174,6 +174,21 @@ public sealed class OpenIddictValidationBuilder
throw new InvalidOperationException(SR.GetResourceString(SR.ID0056));
}
/// <summary>
/// Registers multiple encryption keys.
/// </summary>
/// <param name="keys">The security keys.</param>
/// <returns>The <see cref="OpenIddictValidationBuilder"/> instance.</returns>
public OpenIddictValidationBuilder AddEncryptionKeys(IEnumerable<SecurityKey> keys)
{
if (keys is null)
{
throw new ArgumentNullException(nameof(keys));
}
return keys.Aggregate(this, static (builder, key) => builder.AddEncryptionKey(key));
}
/// <summary>
/// Registers an encryption certificate.
@ -351,6 +366,21 @@ public sealed class OpenIddictValidationBuilder
.OfType<X509Certificate2>()
.SingleOrDefault() ?? throw new InvalidOperationException(SR.GetResourceString(SR.ID0066)));
}
/// <summary>
/// Registers multiple encryption certificates.
/// </summary>
/// <param name="certificates">The encryption certificates.</param>
/// <returns>The <see cref="OpenIddictValidationBuilder"/> instance.</returns>
public OpenIddictValidationBuilder AddEncryptionCertificates(IEnumerable<X509Certificate2> certificates)
{
if (certificates is null)
{
throw new ArgumentNullException(nameof(certificates));
}
return certificates.Aggregate(this, static (builder, certificate) => builder.AddEncryptionCertificate(certificate));
}
/// <summary>
/// Registers signing credentials.
@ -423,6 +453,21 @@ public sealed class OpenIddictValidationBuilder
throw new InvalidOperationException(SR.GetResourceString(SR.ID0068));
}
/// <summary>
/// Registers multiple signing keys.
/// </summary>
/// <param name="keys">The signing keys.</param>
/// <returns>The <see cref="OpenIddictValidationBuilder"/> instance.</returns>
public OpenIddictValidationBuilder AddSigningKeys(IEnumerable<SecurityKey> keys)
{
if (keys is null)
{
throw new ArgumentNullException(nameof(keys));
}
return keys.Aggregate(this, static (builder, key) => builder.AddSigningKey(key));
}
/// <summary>
/// Registers a signing certificate.
@ -597,6 +642,21 @@ public sealed class OpenIddictValidationBuilder
.OfType<X509Certificate2>()
.SingleOrDefault() ?? throw new InvalidOperationException(SR.GetResourceString(SR.ID0066)));
}
/// <summary>
/// Registers multiple signing certificates.
/// </summary>
/// <param name="certificates">The signing certificates.</param>
/// <returns>The <see cref="OpenIddictValidationBuilder"/> instance.</returns>
public OpenIddictValidationBuilder AddSigningCertificates(IEnumerable<X509Certificate2> certificates)
{
if (certificates is null)
{
throw new ArgumentNullException(nameof(certificates));
}
return certificates.Aggregate(this, static (builder, certificate) => builder.AddSigningCertificate(certificate));
}
/// <summary>
/// Registers the specified values as valid audiences. Setting the audiences is recommended

Loading…
Cancel
Save