ADFS SAML Implementation
This article contains Active Directory Federation Services (AD FS)-specific help for configuring login with SSO via SAML 2.0. For help configuring login with SSO for another IdP, refer to SAML 2.0 Configuration.
Configuration involves working simultaneously within the Bitwarden web vault and the AD FS Server Manager. As you proceed, we recommend having both readily available and completing steps in the order they are documented.
Already an SSO expert? Skip the instructions in this article and download screenshots of sample configurations to compare against your own.
Navigate to your organization's Settings → Single sign-on screen:
If you haven't already, create a unique SSO identifier for your organization and select SAML from the the Type dropdown. Keep this screen open for easy reference.
You can turn off the Set a unique SP entity ID option at this stage if you wish. Doing so will remove your organization ID from your SP entity ID value, however in almost all cases it is recommended to leave this option on.
In the AD FS Server Manager, select Tools → AD FS Management → Action → Add Relying Party Trust. In the wizard, make the following selections:
On the Welcome screen, select Claims Aware.
On the Select Data Source screen, select Enter data about the relying party manually.
On the Specify Display Name screen, enter a Bitwarden-specific display name.
On the Configure URL screen, select Enable support for SAML 2.0 WebSSO protocol.
In the Relying party SAML 2.0 SSO service URL input, enter the Assertion Consumer Service (ACS) URL. This automatically-generated value can be copied from the organization's Settings → Single sign-on screen and will vary based on your setup.
On the Choose Access Control Policy screen, select the policy that meets your security standards.
On the Configure Identifiers screen, add the SP Entity ID as a relying party trust identifier. This automatically-generated value can be copied from the organization's Settings → Single sign-on screen and will vary based on your setup.
On the Choose Access Control Policy screen, select the desired policy (by default, Permit Everyone).
On the Ready to Add Trust screen, review your selections.
Once the relying party trust is created, you can further configure its settings by selecting Relying Party Trusts from the left-hand file navigator and selecting the correct display name.
To change the Secure hash algorithm (by default, SHA-256), navigate to the Advanced tab:
To change the endpoint Binding (by default, POST), navigate to the Endpoints tab and select the configured ACS URL:
Construct claim issuance rules to ensure that the appropriate claims, including Name ID, are passed to Bitwarden. The following tabs illustrate a sample ruleset:
In the left-hand file navigator, select AD FS → Service → Certificates to open the list of certificates. Select the Token-signing certificate, navigate to its Details tab, and select the Copy to File... button to export the Base-64 encoded token signing certificate:
You will need this certificate during a later step.
In the left-hand file navigator, select AD FS and from the right-hand options menu select Edit Federation Service Properties. In the Federation Service Properties window, copy the Federation Service Identifier:
You will need this identifier during a later step.
At this point, you have configured everything you need within the context of the AD FS Server Manager. Return to the Bitwarden web vault to complete configuration.
The Single Sign-On screen separates configuration into two sections:
SAML Service Provider Configuration will determine the format of SAML requests.
SAML Identity Provider Configuration will determine the format to expect for SAML responses.
In the service provider configuration section, configure the following fields:
When you are done with the service provider configuration, Save your work.
Identity provider configuration will often require you to refer back to the AD FS Server Manager to retrieve values:
When completing the X509 certificate, take note of the expiration date. Certificates will have to be renewed in order to prevent any disruptions in service to SSO end users. If a certificate has expired, Admin and Owner accounts will always be able to log in with email address and master password.
When you are done with the identity provider configuration, Save your work.
You can require users to log in with SSO by activating the single sign-on authentication policy. Please note, this will require activating the single organization policy as well. Learn more.
Once your configuration is complete, test it by navigating to https://vault.bitwarden.com, entering your email address, selecting Continue, and selecting the Enterprise Single-On button:
Enter the configured organization identifier and select Log In. If your implementation is successfully configured, you will be redirected to the AD FS SSO login screen. After you authenticate with your AD FS credentials, enter your Bitwarden master password to decrypt your vault!
Bitwarden does not support unsolicited responses, so initiating login from your IdP will result in an error. The SSO login flow must be initiated from Bitwarden.