Considerations
External authentication systems
Our Technical Support Engineers 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 Technical Support Engineers. For assistance with external authentication systems, contact your authentication vendor.
- To use this functionality, you must be assigned the Identity Management Administrator role.
- Code42 usernames must match SSO usernames. How you accomplish this depends on how you deploy Code42 agents.
- 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.
- The Code42 console expects SAML assertions to be signed. To configure Code42 to support advanced SAML request configurations, see Set SAML attributes for SSO.
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: Determine the URLs for your Code42 environment
When you configure an identity provider to connect to Code42, typically you must provide the Code42 server login URL, entity ID, and Assertion Consumer Service (ACS) URL. To obtain these values:
-
Sign in to the Code42 console.
- Navigate to Administration > Integrations > Identity Management.
- Locate the Code42 service provider metadata URL:
- When setting up an authentication provider for the first time, the URL appears on the main screen:
- If you previously set up an authentication provider, the URL appears in the authentication provider details:
- The first portion of the URL is your Code42 server URL, for example, https://example.com. Record this URL for use later.
To determine the login URL, add /login to the end. For example, https://example.com/login.
- Copy the Code42 service provider metadata URL and paste it in the address bar of a new browser window.
Your Code42 environment's metadata details appear.
- Find the entityID. Record this URL for use later.
- Find the AssertionConsumerService and its Location URL value, for example, Location="https://example.com/api/SsoAuthLoginResponse". Record this URL for use later.
Step 2: Add the Code42 app in Azure
- Sign in to your Azure portal.
- Go to Azure Active Directory.
- Select Enterprise applications.
- Click New application.
- Add the Code42 application.
- In Add from the gallery enter Code42.
- Select the Code42 application.
- (Optional) Give the application a unique name.
- Click Add.
The Code42 app is added to the list of enterprise applications.
- Modify the Code42 application's properties.
- Under Manage select Properties.
- For Enabled for users to sign in? select Yes.
- For User assignment required? select No.
- For Visible to users? select No.
- Click Save.
- Configure the Code42 application's single sign-on settings.
- Under Manage select Single sign-on.
- Select SAML.
- Click the edit button on Basic SAML Configuration and complete the fields with values you obtained in Step 1. For example:
-
Identifier (Entity ID):
https://example.com
-
Reply URL (Assertion Consumer Service URL):
https://example.com/api/SsoAuthLoginResponse
-
Sign on URL:
https://example.com/login
- Click Save.
- In the Set up Single Sign-On with SAML panel, go to 3 SAML Signing Certificate and copy the App Federation Metadata Url. You will use this in Step 3.
- Make any other settings changes your new application requires, and add users to the new application.
See Microsoft's documentation for details on adding users and performing other application setup tasks in Azure.
Step 3: Add Azure to your Code42 console
-
Sign in to the Code42 console.
- Navigate to Administration > Integrations > Identity Management.
- Click Add Authentication Provider.
- In Display Name, enter an identity provider name to display to users who 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.
- In Provider's Metadata, ensure that Enter URL is selected and paste the federation metadata URL you copied in Step 2.
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.
- Click Create Provider.
Authentication provider settings appear.
Apply provider to organizations in later steps
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.
Step 4: Configure attribute mapping
- Next to Attribute Mapping, click the Edit icon.
- Deselect Use default mapping.
- Configure attribute mapping:
-
Username: Select Use attribute tag and enter:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
-
First Name:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
-
Last Name:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
- Click Save.
Step 5: Test SSO authentication
Step 6: Apply to additional organizations
-
Sign in to the Code42 console.
- Navigate to Administration > Integrations > Identity Management.
- Select the authentication provider.
- Click Edit next to Organizations in use.
- Select organizations to use the authtenication provider for SSO.
If applicable, select the Inherits settings to identify whether an organization inherits the setting from its parent organization. To enable SSO for all organizations, select the top-most organization. (Note that you can also use an organization's settings to select an authentication provider to use for SSO.)
- Click Save.
Step 7: Add new users who sign in with SSO
Option A: Add users in the Code42 console
Use the Code42 console to add users to an organization that uses SSO.
- Verify that the users in the organization exist in the SSO identity provider used by the organization.
- Make sure that the Code42 environment usernames match the SSO usernames.
Option B: Deploy Code42 agents
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 Code42 agents:
-
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 backup agent: When users sign in to Code42 agents, the 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 agent launches.
Losing access to an identity provider
Backup agent only
If a user loses access to the identity provider, Code42 agents continue to back up, uninterrupted.