Tutorial: Microsoft Entra single sign-on (SSO) integration with Cisco AnyConnect

In this tutorial, you'll learn how to integrate Cisco AnyConnect with Microsoft Entra ID. When you integrate Cisco AnyConnect with Microsoft Entra ID, you can:

  • Control in Microsoft Entra ID who has access to Cisco AnyConnect.
  • Enable your users to be automatically signed-in to Cisco AnyConnect with their Microsoft Entra accounts.
  • Manage your accounts in one central location.

Prerequisites

To get started, you need the following items:

  • A Microsoft Entra subscription. If you don't have a subscription, you can get a free account.
  • Cisco AnyConnect single sign-on (SSO) enabled subscription.

Scenario description

In this tutorial, you configure and test Microsoft Entra SSO in a test environment.

  • Cisco AnyConnect supports IDP initiated SSO.

To configure the integration of Cisco AnyConnect into Microsoft Entra ID, you need to add Cisco AnyConnect from the gallery to your list of managed SaaS apps.

  1. Sign in to the Microsoft Entra admin center as at least a Cloud Application Administrator.
  2. Browse to Identity > Applications > Enterprise applications > New application.
  3. In the Add from the gallery section, type Cisco AnyConnect in the search box.
  4. Select Cisco AnyConnect from results panel and then add the app. Wait a few seconds while the app is added to your tenant.

Alternatively, you can also use the Enterprise App Configuration Wizard. In this wizard, you can add an application to your tenant, add users/groups to the app, assign roles, as well as walk through the SSO configuration as well. Learn more about Microsoft 365 wizards.

Configure and test Microsoft Entra SSO for Cisco AnyConnect

Configure and test Microsoft Entra SSO with Cisco AnyConnect using a test user called B.Simon. For SSO to work, you need to establish a link relationship between a Microsoft Entra user and the related user in Cisco AnyConnect.

To configure and test Microsoft Entra SSO with Cisco AnyConnect, perform the following steps:

  1. Configure Microsoft Entra SSO - to enable your users to use this feature.
    1. Create a Microsoft Entra test user - to test Microsoft Entra single sign-on with B.Simon.
    2. Assign the Microsoft Entra test user - to enable B.Simon to use Microsoft Entra single sign-on.
  2. Configure Cisco AnyConnect SSO - to configure the single sign-on settings on application side.
    1. Create Cisco AnyConnect test user - to have a counterpart of B.Simon in Cisco AnyConnect that is linked to the Microsoft Entra representation of user.
  3. Test SSO - to verify whether the configuration works.

Configure Microsoft Entra SSO

Follow these steps to enable Microsoft Entra SSO.

  1. Sign in to the Microsoft Entra admin center as at least a Cloud Application Administrator.

  2. Browse to Identity > Applications > Enterprise applications > Cisco AnyConnect > Single sign-on.

  3. On the Select a single sign-on method page, select SAML.

  4. On the Set up single sign-on with SAML page, click the edit/pen icon for Basic SAML Configuration to edit the settings.

    Edit Basic SAML Configuration

  5. On the Set up single sign-on with SAML page, enter the values for the following fields:

    1. In the Identifier text box, type a URL using the following pattern:
      https://<SUBDOMAIN>.YourCiscoServer.com/saml/sp/metadata/<Tunnel_Group_Name>

    2. In the Reply URL text box, type a URL using the following pattern:
      https://<YOUR_CISCO_ANYCONNECT_FQDN>/+CSCOE+/saml/sp/acs?tgname=<Tunnel_Group_Name>

    Note

    <Tunnel_Group_Name> is a case-sensitive and the value must not contain dots "." and slashes "/".

    Note

    For clarification about these values, contact Cisco TAC support. Update these values with the actual Identifier and Reply URL provided by Cisco TAC. Contact the Cisco AnyConnect Client support team to get these values. You can also refer to the patterns shown in the Basic SAML Configuration section.

  6. On the Set up single sign-on with SAML page, in the SAML Signing Certificate section, find Certificate (Base64) and select Download to download the certificate file and save it on your computer.

    The Certificate download link

  7. On the Set up Cisco AnyConnect section, copy the appropriate URL(s) based on your requirement.

    Copy configuration URLs

Note

If you would like to on board multiple TGTs of the server then you need to add multiple instances of the Cisco AnyConnect application from the gallery. You can also choose to upload your own certificate in Microsoft Entra ID for all these application instances. That way you can have same certificate for the applications but you can configure different Identifier and Reply URL for every application.

Create a Microsoft Entra test user

In this section, you'll create a test user called B.Simon.

  1. Sign in to the Microsoft Entra admin center as at least a User Administrator.
  2. Browse to Identity > Users > All users.
  3. Select New user > Create new user, at the top of the screen.
  4. In the User properties, follow these steps:
    1. In the Display name field, enter B.Simon.
    2. In the User principal name field, enter the username@companydomain.extension. For example, B.Simon@contoso.com.
    3. Select the Show password check box, and then write down the value that's displayed in the Password box.
    4. Select Review + create.
  5. Select Create.

Assign the Microsoft Entra test user

In this section, you'll enable B.Simon to use single sign-on by granting access to Cisco AnyConnect.

  1. Sign in to the Microsoft Entra admin center as at least a Cloud Application Administrator.
  2. Browse to Identity > Applications > Enterprise applications > Cisco AnyConnect.
  3. In the app's overview page, select Users and groups.
  4. Select Add user/group, then select Users and groups in the Add Assignment dialog.
    1. In the Users and groups dialog, select B.Simon from the Users list, then click the Select button at the bottom of the screen.
    2. If you are expecting a role to be assigned to the users, you can select it from the Select a role dropdown. If no role has been set up for this app, you see "Default Access" role selected.
    3. In the Add Assignment dialog, click the Assign button.

Configure Cisco AnyConnect SSO

  1. You are going to do this on the CLI first, you might come back through and do an ASDM walk-through at another time.

  2. Connect to your VPN Appliance, you are going to be using an ASA running 9.8 code train, and your VPN clients will be 4.6+.

  3. First you will create a Trustpoint and import our SAML cert.

     config t
    
     crypto ca trustpoint AzureAD-AC-SAML
       revocation-check none
       no id-usage
       enrollment terminal
       no ca-check
     crypto ca authenticate AzureAD-AC-SAML
     -----BEGIN CERTIFICATE-----
     …
     PEM Certificate Text from download goes here
     …
     -----END CERTIFICATE-----
     quit
    
  4. The following commands will provision your SAML IdP.

     webvpn
     saml idp https://sts.windows.net/xxxxxxxxxxxxx/ (This is your Azure AD Identifier from the Set up Cisco AnyConnect section in the Azure portal)
     url sign-in https://login.microsoftonline.com/xxxxxxxxxxxxxxxxxxxxxx/saml2 (This is your Login URL from the Set up Cisco AnyConnect section in the Azure portal)
     url sign-out https://login.microsoftonline.com/common/wsfederation?wa=wsignout1.0 (This is Logout URL from the Set up Cisco AnyConnect section in the Azure portal)
     trustpoint idp AzureAD-AC-SAML
     trustpoint sp (Trustpoint for SAML Requests - you can use your existing external cert here)
     no force re-authentication
     no signature
     base-url https://my.asa.com
    
  5. Now you can apply SAML Authentication to a VPN Tunnel Configuration.

    tunnel-group AC-SAML webvpn-attributes
      saml identity-provider https://sts.windows.net/xxxxxxxxxxxxx/
      authentication saml
    end
    
    write mem
    

    Note

    There is a work around with the SAML IdP configuration. If you make changes to the IdP configuration you need to remove the saml identity-provider configuration from your Tunnel Group and re-apply it for the changes to become effective.

Create Cisco AnyConnect test user

In this section, you create a user called Britta Simon in Cisco AnyConnect. Work with Cisco AnyConnect support team to add the users in the Cisco AnyConnect platform. Users must be created and activated before you use single sign-on.

Test SSO

In this section, you test your Microsoft Entra single sign-on configuration with following options.

  • Click on Test this application, and you should be automatically signed in to the Cisco AnyConnect for which you set up the SSO
  • You can use Microsoft Access Panel. When you click the Cisco AnyConnect tile in the Access Panel, you should be automatically signed in to the Cisco AnyConnect for which you set up the SSO. For more information about the Access Panel, see Introduction to the Access Panel.

Next steps

Once you configure Cisco AnyConnect you can enforce session control, which protects exfiltration and infiltration of your organization’s sensitive data in real time. Session control extends from Conditional Access. Learn how to enforce session control with Microsoft Defender for Cloud Apps.