Table of Contents

Class SamlMetadataEndpoint

Namespace
Fdyay.IdentityServer.Saml.Endpoints
Assembly
Fdyay.IdentityServer.Saml.dll

Publishes this identity provider's SAML 2.0 metadata.

public sealed class SamlMetadataEndpoint : IEndpointHandler
Inheritance
SamlMetadataEndpoint
Implements
Inherited Members

Remarks

As Duende's MetadataEndpoint does: every current signing certificate from ISamlSigningService, written by ISamlMetadataResponseGenerator. Until 0.144.0 the document was written here, with SigningCertificate alone.

Constructors

SamlMetadataEndpoint(IOptions<SamlOptions>, IIssuerNameService, ISamlSigningService, ISamlMetadataResponseGenerator)

Creates the endpoint over the services that decide what the metadata says.

public SamlMetadataEndpoint(IOptions<SamlOptions> options, IIssuerNameService issuerNameService, ISamlSigningService signing, ISamlMetadataResponseGenerator generator)

Parameters

options IOptions<SamlOptions>

The SAML options: the entity id, endpoint paths and metadata settings.

issuerNameService IIssuerNameService

Supplies the entity id when EntityId names none.

signing ISamlSigningService

Supplies every current signing certificate, each published as a signing key.

generator ISamlMetadataResponseGenerator

Writes the EntityDescriptor.

Methods

ProcessAsync(HttpContext)

Processes the request, or returns null to pass the request through.

public Task<IEndpointResult?> ProcessAsync(HttpContext context)

Parameters

context HttpContext

Returns

Task<IEndpointResult>

Remarks

Answers a GET with the identity provider's EntityDescriptor (SAML 2.0 metadata ยง2.3.2), its endpoints under the request's scheme, host and path base; any other method is answered 405.

Exceptions

ArgumentNullException

context is null.