eIDAS SAML samlp:Extensions to AuthRequest option #180
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR depends on SAML-Toolkits/ruby-saml#520 being merged and will require binding of omniauth-saml to new version of ruby-saml gem, so I'm pushing the PR for reference and discussion, but don't expect it to be merged before ruby-saml#520 is released
This PR intends to provide samlp:Extensions as per EC eIDAS references ( see https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/eIDAS+eID+Profile )
Basically AuthRequest must contain Extensions with definition of eidas:SPType (ServiceProviderType) and eidas:RequestedAttributes (something that saml-core provides only in SeP metadata)
New option (by default disabled)
:auth_request_include_request_attributes
allows user to configure sending required Extensions in AuthRequest, and uses options:sptype
and:request_attributes
to fill the RubySaml::Settings with necessary infoPoints for discussion, because this is my first time with your library, and I'm not sure if the implementation follows your expectations/guidelines
:request_attributes
with:isRequired(bool)
and:value(anytype)
symbols for each array member, so the user can configure all params expected to be available in eidas:RequestedAttribute ?'http://eidas.europa.eu/attributes/naturalperson/DateOfBirth'
), currently your:name
is plain string:name => 'email'
with ie.:name => 'http://eidas.europa.eu/attributes/naturalperson/CurrentGivenName'
?:request_name
) to fill the RequestedAttribute correctly?Usage should be simple
which will result in AuthRequest having this XML snippet included:
Anyway excuse my ruby skills, i've just started, hope my PR is readable to you