content/manuals/enterprise/security/single-sign-on/connect.md
{{< summary-bar feature_name="SSO" >}}
Setting up a single sign-on (SSO) connection involves configuring both Docker and your identity provider (IdP). This guide walks you through setup in Docker, setup in your IdP, and final connection.
[!TIP]
You’ll copy and paste values between Docker and your IdP. Complete this guide in one session with separate browser windows open for Docker and your IdP.
Docker supports any SAML 2.0 or OIDC-compatible identity provider. This guide provides detailed setup instructions for the most commonly used providers: Okta and Microsoft Entra ID.
If you're using a different IdP, the general process remains the same:
Before you begin:
[!NOTE]
You must verify at least one domain before creating an SSO connection.
Keep this window open to paste values from your IdP later.
Use the following tabs based on your IdP provider.
{{< tabs >}} {{< tab name="Okta SAML" >}}
EmailAddressEmailCreate and update{{< /tab >}} {{< tab name="Entra ID SAML 2.0" >}}
{{< /tab >}} {{< tab name="Azure Connect (OIDC)" >}}
User.Read.{{< /tab >}} {{< /tabs >}}
Complete the integration by pasting your IdP values into Docker.
{{< tabs >}} {{< tab name="Okta SAML" >}}
In Okta, select your app and go to View SAML setup instructions.
Copy the SAML Sign-in URL and x509 Certificate.
[!IMPORTANT]
Copy the entire certificate, including
----BEGIN CERTIFICATE----and----END CERTIFICATE----lines.
Return to the Docker Admin Console.
Paste the SAML Sign-in URL and x509 Certificate values.
Optional. Select a default team.
Review and select Create connection.
{{< /tab >}} {{< tab name="Entra ID SAML 2.0" >}}
Open your downloaded Certificate (Base64) in a text editor.
Copy the following values:
[!IMPORTANT]
Copy the entire certificate, including
----BEGIN CERTIFICATE----and----END CERTIFICATE----lines.
Return to the Docker Admin Console.
Paste the Login URL and Certificate (Base64) values.
Optional. Select a default team.
Review and select Create connection.
{{< /tab >}} {{< tab name="Azure Connect (OIDC)" >}}
{{< /tab >}} {{< /tabs >}}
If you're using the CLI, you must authenticate using a personal access token.
Docker supports multiple IdP configurations. To use multiple IdPs with one domain:
[!IMPORTANT]
If SSO is not enforced, users can still sign in using Docker usernames and passwords.
Enforcing SSO requires users to use SSO when signing into Docker. This centralizes authentication and enforces policies set by the IdP.
When SSO is enforced, your users are unable to modify their email address and password, convert a user account to an organization, or set up 2FA through Docker Hub. If you want to use 2FA, you must enable 2FA through your IdP.