Skip navigation
Documentation

Duo Single Sign-On for Generic SAML Service Provider

Last Updated: October 22nd, 2020

Contents

Add two-factor authentication and flexible security policies to any SAML application with Duo Single-Sign On, our cloud-hosted SAML 2.0 identity provider, complete with inline self-service enrollment and Duo Prompt.

About Duo Single Sign-On

Duo Single Sign-On is our cloud-hosted SSO product which layers Duo's strong authentication and flexible policy engine on top of service provider (SP) application logins using the Security Assertion Markup Language (SAML) 2.0 authentication standard. Duo Single Sign-On acts as an identity provider (IdP), authenticating your users using existing on-premises Active Directory (AD) or any SAML 2.0 IdP and prompting for two-factor authentication before permitting access to your service provider application.

Duo Single Sign-On is available in Duo Beyond, Duo Access, and Duo MFA plans, which also include the ability to define policies that enforce unique controls for each individual SSO application. For example, you can require that users of one application complete two-factor authentication at every login, but only once every seven days when accessing a different application. Duo checks the user, device, and network against an application's policy before allowing access to the application.

Configure Single Sign-On

Before configuring your service provider application you'll first need to enable Duo Single Sign-On for your Duo account and configure a working authentication source.

Once you have your SSO authentication source working, continue to the next step of creating the SP application in Duo.

We've already added a number of popular SaaS applications to Duo pre-configured for use with Duo Single Sign-On. These applications have "Single Sign-On (hosted by Duo)" next to their name. If you want to protect a cloud service that we don't have listed by name, you can use our Generic Service Provider application.

When configuring an application to be protected with Duo Single Sign-On you'll need to send attributes from Duo Single Sign-On to the application. Active Directory will work with no additional setup, but if you used a SAML idenity provider as your authentication source please verify that you configured it to send the correct SAML attributes.

Below you can see the Bridge Attribute name used that automatically maps certain attributes from your authentication source.

Bridge Attribute Active Directory SAML IdP
<Username> sAMAccountName Username
<Email Address> mail Email
<Display Name> displayName DisplayName
<First Name> givenName FirstName
<Last Name> sn LastName

Create Your Cloud Application in Duo

  1. Log on to the Duo Admin Panel and navigate to Applications.

  2. Click Protect an Application and locate the entry for Generic Service Provider with a protection type of "2FA with SSO hosted by Duo (Single Sign-On)" in the applications list. Click Protect to the far-right to start configuring Generic Service Provider. See Protecting Applications for more information about protecting applications in Duo and additional application options. You'll need the information on the Generic Service Provider page under Metadata later.

  3. The Metadata section is where you can get SAML identity provider information about Duo Single Sign-On to provide to your service provider.

    Name Description
    Entity ID The global, unique name for Duo Single Sign-On. This is sometimes referred to as "Issuer".
    Single Sign-On URL The authentication URL for Duo Single Sign-On. This is sometimes referred to as "SSO URL" or "Login URL". This URL can also be used to start IdP-initiated authentications.
    Single Log-Out URL The logout URL for Duo Single Sign-On. This is sometimes referred to as "SLO URL" or "Logout Endpoint". This field is optional.
    Metadata URL This URL can be used by service providers to download the XML metadata from Duo Single Sign-On.
    SHA - 1 Fingerprint The SHA-1 fingerprint of the SAML certificate. Sometimes service providers will request a fingerprint instead of uploading a SAML certificate.
    SHA - 256 Fingerprint The SHA-256 fingerprint of the SAML certificate. Sometimes service providers will request a fingerprint instead of uploading a SAML certificate.
    Certificate The certificate used by the service providers to validate the signature on the SAML response sent by Duo Single Sign-On. Click the Download Certificate button to download a crt file.
    SAML Metadata The XML SAML Metadata used by service providers to configure the service provider with settings from Duo Single Sign-On. Click the Download XML button to download a xml file.

    Metadata for configuring generic service providers

Configure Your Service Provider

You'll need to provide some information about Duo Single Sign-On to your cloud application provider, like URL information, a metadata file, a certificate file, or a certificate fingerprint. You can find this information in the Metadata section at the top of the application page in the Duo Admin Panel.

Refer to your service provider's SSO configuration guide for instructions.

Update Your Cloud Application in Duo

  1. Return to the application page in your Duo Admin Panel.

  2. Enter information provided by your application into the Service Provider section:

    Name Description
    Entity ID The service provider identifier.
    Assertion Consumer Service The URL where your service provider receives SAML assertions.
    Single Logout URL Optional: The URL where your service provider receives SAML logout responses.
    Service Provider Login URL Optional: The URL for IdP-initiated logins if your service provider specifies one. This URL will be used when doing an IdP-initiated login from Duo Single Sign-On by either navigating directly to the "Single Sign-On URL" from the metadata section or clicking this application's tile in Duo Central.
    Default Relay State Optional: If your service provider requires a specific RelayState parameter, enter it here.

    Configuring generic service providers

  3. Use your application's SSO instructions to complete the SAML Response section:

    Name Description
    NameID format Format of NameID when sent to the service provider.
    NameID attribute The authentication source attribute used to identify the user to the service provider. This attribute is sent as the NameID. This is often a user's e-mail address. You can select our pre-configured attributes which will automatically pick the correct attribute based on your authentication source from the drop-down or use your own.
    Signature Algorithm Select the encryption strength supported by your service provider. Defaults to SHA-256.
    Signing Options Here you can toggle if you'd like to sign the SAML response and assertion by checking the boxes next to Sign response and Sign assertion. They are both checked by default.
    Map attributes If your service provider requires specific attributes sent, you can map the authentication source attributes to the required names here. On the left side you can select our pre-configured attributes which will automatically pick the correct attribute based on your authentication source from the drop-down or use your own and on the right side type the new attribute name you want sent to your service provider. Consult your service provider's documentation for the required attribute names.
    Create attributes If your service provider requires an attribute with a specific value, you can define that here. Enter the new attribute name on the left, and the static attribute value on the right. Consult your service provider's documentation for the required attribute names.
    Role attributes If your service provider requires an attribute related to the roles or groups of a user, specify that in the “Role attributes” section. Type the Attribute Name required by the service provider, and then under Service Provider’s Role type the value of the attribute that should be sent and under Duo Groups select the Duo Groups a user should be part of to get that role added to their SAML response.

    Configuring generic service providers

  4. You can adjust additional settings for your new SSO application at this time — like changing the application's name from the default value, enabling self-service, or assigning a group policy.

  5. Scroll down to the bottom of the page and click Save.

Duo Universal Prompt

Duo's next-generation authentication experience, the Universal Prompt, is coming to web-based applications that display the current Duo Prompt in browsers.

Migration to Universal Prompt for your generic service provider application is a two-step process:

  • Update the generic service provider application to support the Universal Prompt.
  • Enable the Universal Prompt experience for users of that generic service provider application (when the Universal Prompt becomes available)

We've already updated the Duo generic service provider application to support the Universal Prompt when it's ready, so there's no action required on your part to update. The "Universal Prompt" section of this application's details page in the Admin Panel reflects this status today as "New Prompt Ready".

Universal Prompt Info - Application Updated

When the Universal Prompt becomes available, you'll return here to activate it for users of this application.

Click the See Update Progress link to view the Universal Prompt Update Progress report. This report shows the update availability and migration progress for all your Duo applications in-scope for Universal Prompt support.

Read the Universal Prompt Update Guide for more information about the update process to support the new prompt, and watch the Duo Blog for future updates about the Duo Universal Prompt.

Verify SSO

You can log into most applications using SSO by visiting their website directly.

If your application requires IdP-initiated logins using SSO, the login URL is the Single Sign-On URL under the "Metadata" section at the top of the application page.

You will be redirected to your primary SAML identity provider to complete first factor login, approve Duo two-factor authentication, and get redirected back to the application's site after authenticating.

When you log into an application provided by Duo's Single Sign-On, you will be redirected to the active authentication source to complete first factor login. On successful first factor login, you will be redirected to the Duo prompt to complete two-factor authentication. After successful two-factor authentication, you will get redirected back to the application's site.

Enable Remembered Devices

To minimize additional Duo two-factor prompts when switching between your service provider application and your other Duo Single Sign-On SAML applications, be sure to apply a shared "Remembered Devices" policy to your SAML applications.