-
Notifications
You must be signed in to change notification settings - Fork 435
Description
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.