Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. User accesses SP with his/her web browser and clicks on login
  2. User's web browser is sent to discovery service where users chooses his/her IdP
  3. User's web browser is sent to login page of his IdP where (s)he authenticates
  4. After successful authentication, the user's web browser is redirected with a SAML assertion back to the SP
  5. The SP validates the assertion and extracts the user's attributes (at least a unique identifier that is needed for the Attribute Query).
  6. If all requested attributes have been released and the AuthnContextClassRef (or the eduPersonAssurance attribute) contains the value 'https://refeds.org/profile/mfa' we're done and the following steps are skipped. (NB: This is only an example. Which access rules are implemented is up to the community or project making use of this approach!)
    Otherwise:
  7. Using the identifier attribute, the SP then performs a SAML attribute query to the Attribute Authority (AA) of the Step-up Authentication Service (SAS)
  8. If available, the AA returns the LoA attribute (login at SAS IdP) for this user to the SP
  9. Using the Shibboleth Attribute Checker, the SP checks the LoA-related attribute (that was queried from the AA). If that LoA attribute is not present or if it does not have the required value, the user is sent to a web page X of the SAS.
  10. Web page X is protected by an SP (SAS SP) itself, therefore the user has to authenticate again, this time using the SAS IdP - as a substitute for a second factor of the Home IdP.
  11. If authentication at SAS IdP succeeded, a temporary LoA entry is created in database of AA and the user is sent back to SP
  12. SP initiates login of user again, so (s)he is sent back to his/her IdP (where SSO session is still active) and from there back to the SP, which again initiates a SAML attribute query.
  13. If the attribute query happened in a reasonably short time interval since the user authenticated at SAS IdP, the AA has released a LoA attribute for the user. Therefore, the AttributeChecker's requirements are met and the user is granted access.

...