Skip to main content

Who is this article for?
Find your product plan in the Code42 console on the Account menu.

Incydr Professional, Enterprise, and Gov F2
Incydr Basic, Advanced, and Gov F1
Other product plans

Incydr Professional and Enterprise, yes.

Incydr Basic and Advanced, yes.

CrashPlan Cloud, yes.

Other product plans, yes.

CrashPlan for Small Business, no.

This article applies to Code42 cloud environments.

Other available versions:

On-premises

HOME
GETTING STARTED
RELEASE NOTES
FAQs
APIs
SYSTEM STATUS
Code42 Support

Configure Microsoft AD FS for SSO in your Code42 cloud environment

Who is this article for?
Find your product plan in the Code42 console on the Account menu.

Incydr Professional, Enterprise, and Gov F2
Incydr Basic, Advanced, and Gov F1
Other product plans

Incydr Professional and Enterprise, yes.

Incydr Basic and Advanced, yes.

CrashPlan Cloud, yes.

Other product plans, yes.

CrashPlan for Small Business, no.

This article applies to Code42 cloud environments.

Other available versions:

On-premises

Overview

This tutorial explains how to configure your Code42 cloud environment to use single sign-on (SSO) with Microsoft Active Directory Federation Services (AD FS) 3.0. This article applies to environments in the Code42 cloud only. If you have an on-premises authority server, see Configure Microsoft AD FS for SSO in your Code42 environment.

This article assumes you are already familiar with SSO and the SAML standard. For more information about how the Code42 platform implements SSO, see Introduction to single sign-on.

Compatible Code42 platform components

Compatible with SSO
  • Code42 app for Windows, Mac, and Linux
  • Code42 console
Incompatible with SSO
  • Code42 apps for iOS, Android, and Windows Phone

Considerations

  • Code42 usernames must match SSO usernames. How you accomplish this depends on how you deploy Code42 apps.
  • Code42 supports service provider-initiated SSO but does not support identity provider-initiated SSO. Therefore, users cannot sign in to your Code42 environment from the identity provider's website or application, but instead must log in using a browser bookmark. 
  • SSO provides user authentication but does not provide user management. Set up SCIM provisioning or use the Code42 console to manage users
  • Code42 does not support Single Logout (SLO). Users must sign out of the identity provider to end their single sign-on session.
  • To configure Code42 to support advanced SAML request configurations using the Code42 API, see Use the Code42 API to set SAML attributes
External authentication systems
Our Customer Champions can help with authentication issues caused by interaction with Code42 products. However, troubleshooting authentication issues outside your Code42 environment is beyond the scope of our Customer Champions. For assistance with external authentication systems, contact your authentication vendor.

Before you begin

Verify identity provider configuration
  • Make sure the SSL certificate of your SSO identity provider has been signed by a trusted Certificate Authority (CA).
  • Make sure you have administrative access to the identity provider or have contact with an identity provider administrator.
Verify network configuration
  • Configure your private network, Internet, and VPN settings to allow client devices to communicate with your identity provider on port 443. Test client connectivity to the identity provider before you proceed.
  • If you want to use URL-based metadata exchange to configure Code42 and the identity provider to work together, make sure two-way communication is available between them on TCP port 443. If two-way communication is not available or not allowed, you must download the identity provider's metadata file and make it accessible to Code42.
  • Confirm the required ports with your identity provider to determine if custom ports are being used.

Determine whether you need to configure multiple Code42 tenants

Before you begin configuring SSO for Code42, consider whether your company has more than one Code42 tenant that you need to connect to your SSO identity provider. Large companies and organizations often have separate, dedicated Code42 cloud instances (or "tenants") in use by different groups or departments. 

If you have more than one Code42 tenant to connect to your SSO identity provider, you need to obtain an entity ID URL for each Code42 tenant. An entity ID is a unique string that identifies a specific tenant to your SSO identity provider. The tenant-specific entity ID URL is composed of the Code42 domain followed by the tenant ID, and can be found in the Code42 service provider metadata URL file in each tenant. For example:

"entityId": "https://example.com/42424daa-424c-4e42-42c4-c424242420d4" 

Step 1: Add AD FS as an authentication provider

To complete this step, you must first verify that AD FS is deployed according to Microsoft's instructions.

  1. Sign in to the Code42 console.
  2. Navigate to Administration > Integrations > Identity Management.
    Identity Management in the console
  3. Click Add Authentication Provider.
    Add Authentication Provider dialog
  4. In Display name, enter an identity provider name to display to users that sign in with SSO.
    If your Code42 environment provides more than one SSO identity provider, users see a list of providers to choose from. They must select the provider configured for their Code42 organization.
  5. In Provider's Metadata, choose one of the following options:  
    •  Enter URL: Paste the URL for the AD FS metadata XML file, for example:https://<adfs-server>/federationmetadata/2007-06/federationmetadata.xml
    • Upload XML  File: Upload the AD FS metadata XML file to your instance of the Code42 console.
      Custom domains are not supported
      When entering the URL for the XML metadata file, custom domains are not supported. You must use the standard domain of your identity provider. 
  6. Click Create Provider.
    Authentication provider settings appear.
  7. Copy the Code42 Service Provider Metadata URL. You will use this in the Step 2 to create a relying party trust between AD FS and your Code42 console.
    Identity Management details
Provider information message

Note the following message on the dialog:
This provider will not be applied to an organization until you update the organization security settings.

Do not apply this authentication provider to organizations yet. You will apply this provider to a test organization and to production organizations in later steps.
  1. If you choose not to use the default mapping, you can use Attribute Mapping to customize mappings between Code42 platform user attributes and authentication provider SSO assertion attributes.
    1. Click the Edit icon. Edit_icon.png
    2. Deselect Use default mapping.
    3. Configure mapping settings for each Code42 platform user attribute.
      Each field supports up to 128 characters. 
      • Username: Specify the SSO identifier or attribute that maps to the Code42 platform username.
        • Select Use nameId to use the SSO name identifier.
        • Select Use attribute tag to enter a custom SSO attribute.
      • Email: Enter the SSO attribute that contains user email addresses.
      • First Name: Enter the SSO attribute that contains user first names.
      • Last Name: Enter the SSO attribute that contains user last names.
    4. Click Save.
  2. Local Users displays the current user. If there are any other users you want to exempt from using this authentication provider to log in, enter them here.

Step 2: Add the Code42 service provider metadata URL to AD FS

  1. If there is a mix of Windows, Mac, and Linux computers in your Code42 environment, go to Edit Global Authentication Policy in AD FS, and enable both Windows authentication and Forms authentication. See Microsoft's instructions
  2. Create a relying party trust between AD FS and your Code42 console.
    1. Follow the wizard steps to configure the relying party trust.
    2. When you are prompted for the relying party metadata, provide the URL you copied from the Code42 Service Provider Metadata URL in the Step 1
  3. Create a claim rule to send LDAP attributes as claims.
    The claim rule maps Active Directory attributes to Code42 user attributes.
    1. Map the LDAP e-mail addresses attribute to outgoing claim type uid.  This maps directory email addresses to Code42 usernames.
      In the Code42 cloud usernames must be email addresses. 
    2. Map other outgoing claim types such as givenNamesn, and mail.
  4. Ensure that Active Directory uses the SHA-256 hash algorithm:
    1. Right-click the relying party trust, then select Properties.
    2. Click Advanced.
    3. Verify that Secure hash algorithm is set to SHA-256.
      Code42 uses SHA-256 for the hash algorithm by default. For information about changing the signature and digest algorithms, see Use the Code42 API to set SAML attributes.

Step 3: Test SSO authentication

To start, create a test user in AD FS. Then create a test organization in the Code42 console.

Incydr Professional and Enterprise

Incydr Basic and Advanced, CrashPlan Cloud, and other plans

Step 4: Apply this provider to production organizations

Incydr Professional and Enterprise

Incydr Basic and Advanced, CrashPlan Cloud, and other plans

Step 5: Add new users who sign in with SSO

  1. In AD FS, add new users for whom you want to enable login to Code42. See Microsoft's documentation for information about adding users.
  2. Ensure the same users are set up in Code42. You can add users manually with the Code42 console to an organization that uses SSO, enable SCIM provisioning, or deploy Code42 apps to users in an organization that uses SSO.

What to expect

Reduced authentication prompts

When users sign in with SSO, they do not need to re-enter credentials for subsequent authentication attempts until the SAML authentication token expires. A SAML token applies to an application rather than a device, which means that a user might need to enter credentials again when signing into a different app. 

For example, the single sign-in process differs whether users sign in to the Code42 console or the Code42 app:

  • Code42 console: When users sign in to the Code42 console, they are redirected in the web browser to sign in to their SSO identity provider. As soon as they sign in to their identity provider, the Code42 console launches. 
  • Code42 app (Incydr Basic and Advanced, CrashPlan Cloud, and other plans only): When users sign in to the Code42 app, following message appears: "To complete the sign in process, go to your web browser. This screen updates automatically once login is successful." A web browser window is automatically opened so they can complete the sign-in process in their SSO identity provider.  As soon as they sign in to their SSO identity provider in the provided web browser window, the Code42 app launches.

Lost access to an identity provider

Incydr Basic and Advanced, CrashPlan Cloud, and other plans only

If a user loses access to the identity provider, the Code42 app continues to back up, uninterrupted.

Troubleshoot authentication errors

Follow this procedure if SSO authentication for the Code42 app works externally but not internally, or if you see the following error In the AD FS event viewer: MSIS7102: Requested Authentication Method is not supported on the STS

Diagnosing

Search the AD FS logs to verify the error:

  1. Navigate to your AD FS event viewer.
  2. Search for the following log: MSIS7102: Requested Authentication Method is not supported on the STS

If you see the above error, continue to the solution described below to configure AD FS to use the proper authentication method with Code42. 

Solution

Edit the Authentication Policies in AD FS: 

  1. Navigate to Authentication Policies.
  2. Under Primary Authentication, click Edit next to Global Settings.
  3. Under Intranet, enable both Forms Authentication and Windows Authentication.
  4. Click Apply.

edit global authentication policy ADFS