Implementing single sign-on (SSO) in your Code42 environment provides security benefits and simplifies the sign-in experience. This article provides:
- An overview of SSO
- A list of compatible Code42 platform components and third-party SAML 2.0 identity providers (IdPs)
For SSO configuration instructions, see our articles for each supported identity provider.
What is SSO?
SSO is an authentication method that allows a user to use the same credentials to sign in to multiple applications.
The main components of an SSO system are:
- identity provider
- The system that performs the authentication. Often abbreviated as IdP.
- service provider
- A system acting as a gatekeeper for one or more resources (applications).
- A protected application, which may or may not be web-based. The resource and the service provider are often integrated.
- user agent
- A software application that acts on behalf of the user who wishes to access resources. The user agent is often a web browser, although it can also be a desktop application, mobile app, or another type of agent.
SSO authentication process
When a user attempts to access an SSO-enabled protected resource, such as a Code42 application or administration console, the user is redirected to the identity provider. If the user still has an active session with the identity provider, the user is automatically redirected to the desired resource. If the user does not have an active session, the user is prompted to enter credentials. Once authenticated, the user has access for a configurable period of time to all resources protected by the identity provider.
The following diagram describes how the Code42 platform components and the SSO identity provider interact.
- Service provider: Code42 for Enterprise authority server
- User agent: Code42 for Enterprise applications or web browser
- Identity provider: A SAML 2.0 identity provider that supports HTTP POST binding
When a user attempts to sign in, the user agent sends a sign-in request to the service provider.
Note: An API call is made to your master server's Website protocol, host and port, so that port must be open to the user agent.
|2||The service provider refers the user agent to the identity provider's SSO URL.|
|3||The user agent sends an authentication request to the identity provider.|
|4||The identity provider authenticates the user and provides the user agent with a SAML authentication token.|
|5||The user agent sends the authentication token to the service provider.|
|6||The service provider accepts the authentication token and grants the user access to the user agent.|
SSO advantages, disadvantages, and limitations
- Delegates all authentication to the identity provider
- Allows for centralized authentication in organizations that do not implement Active Directory or LDAP (for example, computers that are not tied to a directory)
- Minimizes phishing opportunities
- Provides detailed reporting on user access
- Reduces user password fatigue from different username and password combinations
- Reduces time spent re-entering passwords
- Reduces IT costs due to lower number of IT help desk calls about passwords
- Prevents access to service providers if the identity provider is unavailable
For this reason, SSO can be undesirable for systems requiring guaranteed access at all times, such as security or plant-floor systems.
- Allows an unauthorized user to gain access to all protected resources if a user's credentials are compromised
To reduce risk, ensure that credentials are stored securely, and consider implementing strong authentication methods such as smart-cards and one-time password tokens.
- Provides user authentication but does not provide user management
User management is provided by the local Code42 platform directory or LDAP.
- The Code42 platform does not handle single sign-off. If a user logs out of the Code42 environment, the authority server does not notify other service providers, and vice-versa.
- When a user signs out of the SSO identity provider, he or she is not automatically signed out of the Code42 for Enterprise applications. There are two ways the user can be signed out of the Code42 for Enterprise applications:
- An administrator can deauthorize the user's devices from the administration console.
- The user can sign out of the Code42 for Enterprise applications.
Code42 environments with an on-premises authority server
The following identity providers have been tested on Code42 environments with an on-premises authority server:
Other SAML 2.0 identity providers that support HTTP POST binding may be compatible.
SAML 2.0 algorithms
The following SAML 2.0 algorithms are still allowed only when used in properties of the identity provider:
- RSA/MD5 for digital signatures:
- MD5 for HMAC:
If your identity provider is up to date and configured appropriately, these deprecated methods are not provided. However, these deprecated algorithms are permitted to allow the authority server to be backward compatible if your identity provider still provides these methods for signing its tokens.