Use Cases
HomeIntegrityControlManagement CenterSolutions
  • Get Started
  • Integrity | Access
    • Auth. methods
      • LDAP (Username/Password)
      • LDAP (Username/Password) + OTP (SMTP)
      • LDAP (Username/Password) + OTP (SMS)
      • Swedish BankID
      • Microsoft Entra ID (SAMLSPBroker)
      • Foregin eID (SAMLSPBroker)
    • Auth. methods (SAML)
      • One-Time Password (OATH)
      • Inera IdP (SITHS) (SAMLSPBroker)
      • ID-porten (Norway) (SAML IdP with OIDC RP)
      • Multiple SAML IdP's configured
        • Multiple JSON files
    • Auth. methods (OIDC)
      • Static values (OIDC) - Test only
      • Swedish BankID (OIDC)
      • UID/PWD (OIDC)
    • Auth. methods (MISC)
      • Selector filtering
      • AuthZ control
      • External links and Cancel location
    • Add a Federation or SAML SP
  • Integrity | Portal
    • Portal
  • Integrity | Enrollment
    • Software token (OATH)
    • Best practice configuration
  • Integrity | Radius
    • UID/OATH token
    • UID/Password/OATH token
    • UID/Password/SMTP
  • Integrity | API
    • Swedish Siths eID
    • Oath Token
  • Control | Applications
    • Password Reset
    • Password Reset for Entra ID
    • Password Reset for Google Workspace
  • OPERATION
    • Rolling upgrade - cluster
  • TROUBLESHOOTING
    • Wrong relaystate
  • Misc
    • Address configuration externally
    • ADFS
      • Protect Fortified ID apps
      • Install and configure Fortified ID ADFS adapter for Siths eID
      • Install and configure Fortified ID ADFS adapter for Oath
    • AWS
      • Protect AWS Cognito with eID MFA
      • Protect AWS IAM Identity Center with eID MFA
    • Customization
      • Overlay - WEB
      • Overlay - Portal
      • Overlay - Password Reset
      • Overlay - Enrollment
      • Logout page
    • Dependency-Track - protect with eID MFA and SSO
    • Digitala Nationella Prov (DNP) / Skolfederation
      • Active Directory Federation Services (ADFS) with BankID as step-up-method
      • Active Directory / LDAP with BankID as step-up-method
      • Entra ID (Azure AD) with BankID as step-up-method
      • Google with BankID as step-up-method
      • Generate eduPersonPrincipalName (eppn) and store in Google
      • Generate eduPersonPrincipalName (eppn) and store in Entra ID
      • Common configuration
    • Encrypt configuration secrets
    • Microsoft Entra
      • Protect Entra ID (Azure AD) with eID MFA
      • Entra External - Support for eID (SAML)
      • Entra External - Support for eID (OIDC)
    • Expressions
    • Google
      • Common configuration for Google Workspace - Directory API
      • Common configuration for Google Workspace - authentication for Fortified ID products
      • Delegated administration for Google Workspace - teacher updates student guardians
      • Delegated administration for Google Workspace - teacher updates student password
      • Protect Google Workspace with eID MFA
    • HTTPS
    • Protect sensitive data, such as social security numbers, through obfuscation
    • Reverse proxy
      • Install Apache Web Server on Windows
      • Add SSL certificate and enable https
      • Add a Fortified ID virtual host
    • Set AuthnContextClassRef
    • Wiki.js - OpenID Connect (OIDC)
Powered by GitBook
On this page
  • Scenario
  • Prerequisite
  • Configuration
  • Update Entra to trust Integrity
  • Test the configuration
  • Login to DNP with step-up (lärare / skolpersonal)
  • Login to DNP without step-up (elev)
  1. Misc
  2. Digitala Nationella Prov (DNP) / Skolfederation

Entra ID (Azure AD) with BankID as step-up-method

PreviousActive Directory / LDAP with BankID as step-up-methodNextGoogle with BankID as step-up-method

Last updated 1 year ago

Scenario

In this scenario, the web resource DNP (Digitala Nationella Prov) will be protected by a SAML IdP (Integrity Web), using Skolfederationen as the integration layer.

Entra ID will be used for primary authentication. The integration between Integrity and Entra ID is federation-based (SAML2). Entra ID will pass user attributes necessary for DNP, and also an attribute (mfa_identifier) for the step-up verification to work.

Based on data passed in the initial SAML2 authnRequest from DNP to Integrity, a decision will be automatically made if the user should be prompted for step-up-authentication (BankID).

The identifier of the result of the BankID authentication will be compared to the mfa_identifier value, to verify that the step-up was performed by the correct person.

! This scenario could easily be copied and modified to fulfill other DNP login requirements:

  • Other DIGG-certified LOA3 step-up methods, such as Freja, SITHS, EFOS, AB Svenska Pass

  • Other primary authentication sources, such as Google, ADFS, AD, or a combination of many primary authentication sources.

Prerequisite

There are some prerequisite for this use case. You will need the following:

  • BankID certificate. To be able to communicate with bankid backend.

  • Entra ID (Azure AD) administration rights.

  • Host (DNS) name of the Integrity service (external access)

  • Access to Skolfederationen metadata administration. To be able to upload metadata

  • eduPersonPrincipalName (eppn) stored on the Entra ID user object

  • Social security number (personnummer) stored on the Entra ID user object (only for teachers (lärare/skolpersonal))

  • Outgoing TCP/443 communication. To be able to communicate with BankID backend and metadata services.

Configuration

Update Entra to trust Integrity

Trust need to be established between the primary IdP (Entra) and the SP (Integrity Web).

Create Enterprise application and configure SSO

  • Login to Entra ID as an administrator

  • Select Enterprise applications

  • Click New application

  • Click Create your own application

  • Enter a name of the app, Skolfederationen Integrity

  • Select the option Integrate any other application you don't find in the gallery (Non-gallery)

  • Create

  • Click on the application in the list of applications

  • In the Overview section, click 1.Assign users and groups

  • Allow all users access to the application

  • In the Overview section, click 2.Set up single sign on

  • Select SAML as the single sign-on method

  • Click Edit on the Basic SAML configuration

  • On the Identifier part, click Add identifier

  • Enter https://<your_integrity_dns_name>/saml/authn/integrity_skolfed_broker_sp

  • On the Reply URL part, click Add reply URL

  • Enter https://<your_integrity_dns_name>/saml/authn/integrity_skolfed_broker_sp

  • Click Save.

  • Example:

  • Click Edit on the Attributes & claims

  • Click Add new claim

  • Enter a name, urn:oid:1.3.6.1.4.1.5923.1.1.1.6

  • Select the source attribute, containing the eppn value on the user object in Entra.

  • Example:

  • Click Save

  • Click Add new claim

  • Enter a name, mfa_identifier

  • Expand Claim conditions

  • Select User type = Any, Scoped Groups = <select groups with teachers/skolpersonal>, Source = Attribute, Value = <select the source attribute containing "personnummer">

  • Example:

  • Click Save

Update Integrity to trust Entra

  • In the Entra ID portal, select the application created in previous step

  • Select 2. Setup Single sign-on

  • In section 3. SAML Certificates, copy the App Federation Metadata URL value. This will be used in a later step.

  • In section 4, copy the Microsoft Entra Identifier. This will be used in a later step.

  • Open the file customer/config/globals.json

  • Navigate to the saml part

  • Set authenticating_idp_metadata to the App Federation Metadata URL value copied in previous step. Set authenticating_idp_entityid to the Microsoft Entra Identifier value copied in previous step.

     "saml": { 
      "authenticating_idp_metadata": "https://login.microsoftonline.com/bf70b0ec-2b39-4a8e-a8e8-e3f55f4afbd4/federationmetadata/2007-06/federationmetadata.xml?appid=3fab144b-0db9-4236-979c-afb31b04e3f8",
      "authenticating_idp_entityid" : "https://sts.windows.net/bf70b0ec-2b39-4a8e-a8e8-e3f55f4afbd4/",
      "authenticating_idp_metadata_path": ""
     },
  • Restart the Integrity service

Test the configuration

Login to DNP with step-up (lärare / skolpersonal)

  1. Open a browser

  2. Select Inloggning med e-legitimation

  3. Select your IdP

  4. You should be redirected to Integrity and then to Entra

  5. If already logged in to Entra, SSO should happen, otherwise enter your Entra credentials

  6. You should be redirected back to Integrity and prompted with BankID authentication

  7. Fulfill BankID authentication

  8. You should now be redirected back to DNP. If successful, this should be presented.

Tip. Use a SAML tracer tool for your browser to view the data added.

Login to DNP without step-up (elev)

  1. Open a browser

  2. Select Inloggning utan e-legitimation

  3. Select your IdP

  4. You should be redirected to Integrity and then to Entra

  5. If already logged in to Entra, SSO should happen, otherwise enter your Entra credentials

  6. You should be redirected back to Integrity and redirected back to DNP. If successful, this should be presented.

to setup the basic configuration. Once done, perform the steps below.

Browse to (DNP test environment) or (DNP production environment)

Browse to (DNP test environment) or (DNP production environment)

Follow these steps
https://fidustest.skolverket.se/DNP-staging/
https://fidustest.skolverket.se/DNP/
https://fidustest.skolverket.se/DNP-staging/
https://fidustest.skolverket.se/DNP/