Skip to content

[Feature Request] Allow relaxed parsing of URIs in SAML2 #3279

@glatzert

Description

@glatzert

I'm an AAI Admin at a german university and I'm currently in the process of bringing "BundID" into our AAI.
BundID is a federated login system to allow login via European Issued Identity Cards, is mostly a SAML2, but has some unique quirks. One of them being "AuthnContextClassRef" not being an absolute URI.

While this works well with Keycloak and (most likely) Shibboleth IdP, we're at a loss with Microsoft.IdentityModel, since there's an active check for IsAbsolute in https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blame/7699e533557a32fb3b74dc440c10a61c9b90df1b/src/Microsoft.IdentityModel.Tokens.Saml/Saml2/Saml2AuthenticationContext.cs#L81-L82.
From a standards view-point this might be the correct thing to do, but from a library user standpoint, this might be a little bit too strict.

So I'd like to propose a relaxation of the check by either using an configurable switch OR by removing the check alltogether - I'm aware this isn't 100% up to SAML2-Core, but it's at least interoperable with other SAML2 products.

Unfortunately my only alternatives are either: take the SAML Response, Decrypt it, validate signature by hand (that won't happen) or ditch the usage of Microsoft.IdentityModel and go down another route with e.g. Keycloak.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Customer issued PRIndicates a customer has issued a PR to fix

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions