Skip navigation
Documentation

Duo Single Sign-On for Epic Mobile Apps

Last Updated: April 18th, 2024

Add two-factor authentication and flexible security policies to your Epic mobile application logins with Duo Single-Sign On. Our cloud-hosted OpenID identity provider offers inline user enrollment, self-service device management, and support for a variety of authentication methods — such as passkeys and security keys, Duo Push, or Verified Duo Push — in the Universal Prompt. Duo Single Sign-On enables your providers to both log into as well as complete e-prescriptions using Epic’s Haiku, Canto, and Rover mobile applications.

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 Epic Mobile Apps logins using the Security Assertion Markup Language (SAML) 2.0 or OpenID Connect (OIDC) authentication standards. Duo Single Sign-On acts as an OpenID provider (OP), 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 Epic Mobile Apps.

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

Configure Single Sign-On

Before configuring Epic Mobile Apps with Duo SSO using OpenID Connect (OIDC) authentication 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 Epic Mobile Apps application in Duo.

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 default bridge attributes that automatically map 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 the Epic Mobile Apps 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 Epic Mobile Apps 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 Epic Mobile Apps. See Protecting Applications for more information about protecting applications in Duo and additional application options. You'll need the information on the Epic Mobile Apps page under Metadata later.

  3. The Metadata section is where you can get OpenID provider information about Duo Single Sign-On to provide to Epic. You'll need information from here later.

Configure Epic Mobile Apps

You'll need to provide some information about Duo Single Sign-On to Epic, like URL information, client id, and client secret. You can find this information in the Metadata section at the top of the application page in the Duo Admin Panel.

Please reach out to your Epic account team for configuration assistance.

Update your Application in Duo

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

  2. Navigate to the Relying Party section. You may modify the value of Access Token Lifetime between 5 to 60 minutes. Default is 60 minutes.

  3. Optionally, you can configure refresh tokens by checking the box next to Refresh Tokens. You can then modify the following lifetimes:

    • Refresh Token Absolute Lifetime: The length of time after an original user authentication that refresh tokens can be exchanged for additional tokens. Once this time has been exceeded, the user will need to authenticate again. The lifetime can be 60 minutes to 180 days. Default is 30 days.
    • Refresh Token Inactivity Lifetime: The length of time an individual unused refresh token will be valid before it expires. The lifetime can be 5 minutes to 7 days. Default is 24 hours.
  4. Next to Sign-In Redirect URLs we've automatically addeded the following URLs:

    • Haiku: com.epic.haiku.oidc://callback
    • Canto: com.epic.canto.oidc://callback
    • Rover: com.epic.rover.oidc://callback
    Configure grant type and redirect URLs
  5. Scopes are used by the Epic during authentication to authorize access to a user's details. Each scope returns a set of user attributes (claims) that are required to be mapped to an IdP attribute. When an OIDC request is sent to Duo SSO only the claims from the requested scopes will be sent back in the response.

    We've automatically enabled the following scopes and added the following claims. You will need to fill out which attribute is used from your authsource by adding the IdP Attribute name related to each claim:

    • Profile Scope:
      • Claim: epic_user_id

      • Claim: epic_user_id_type

        Configure default scopes and claimns
  6. 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.

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

Duo Universal Prompt

The Duo Universal Prompt provides a simplified and accessible Duo login experience for web-based applications, offering a redesigned visual interface with security and usability enhancements.

Universal Prompt Traditional Prompt
 Duo Push in Universal Prompt  Duo Push in Traditional Prompt

We've already updated the Duo Epic Mobile Apps application hosted in Duo's service to support the Universal Prompt, so there's no action required on your part to update the application itself. You can activate the Universal Prompt experience for users of new and existing Duo Epic Mobile Apps applications from the Duo Admin Panel.

Before you activate the Universal Prompt for your application, it's a good idea to read the Universal Prompt Update Guide for more information about the update process and the new login experience for users.

Activate Universal Prompt

Activation of the Universal Prompt is a per-application change. Activating it for one application does not change the login experience for your other Duo applications.

The "Universal Prompt" area of the application details page shows that this application is "Ready to activate", with these activation control options:

  • Show traditional prompt: (Default) Your users experience Duo's traditional prompt via redirect when logging in to this application.
  • Show new Universal Prompt: Your users experience the Universal Prompt via redirect when logging in to this application.

Universal Prompt Info - Application Ready for Universal Prompt

Enable the Universal Prompt experience by selecting Show new Universal Prompt, and then scrolling to the bottom of the page to click Save.

Once you activate the Universal Prompt, the application's Universal Prompt status shows "Activation complete" here and on the Universal Prompt Update Progress report.

Universal Prompt Info - Universal Prompt Activation Complete

Should you ever want to roll back to the traditional prompt, you can return to this setting and change it back to Show traditional prompt. However, this will still deliver the Duo prompt via redirect, not in an iframe.

Universal Update Progress

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. You can also activate the new prompt experience for multiple supported applications from the report page instead of visiting the individual details pages for each application.

Verify SSO

Please reach out to your Epic account team for assistance testing your setup.

When you log into an application provided by Duo's Single Sign-On, you will be redirected to Duo Single Sign-On to begin authentication.

Active Directory Login

With Active Directory as the Duo SSO authentication source, enter the primary username (email address) on the Duo SSO login page and click or tap Next.

Duo Single Sign-On Login

Enter the AD primary password and click or tap Log in to continue.

Duo Single Sign-On Password

SAML Login

With a SAML identity provider as the Duo SSO authentication source, Duo SSO immediately redirects the login attempt to that SAML IdP for primary authentication. Users do not see the Duo SSO primary login screen.

Duo Authentication

Successful verification of your primary credentials by Active Directory or a SAML IdP redirects back to Duo. Complete Duo two-factor authentication when prompted and then get redirected back to the relying party application to complete the login process.

Duo Universal Prompt

*Universal Prompt experience shown.