Slack Single Sign-On Integration

The Slack Single Sign-on (SSO) Integration creates a client application that uses Auth0 for authentication and provides SSO capabilities for Slack. Your users log in to Slack with Auth0 identity providers, which means the identity provider performs the identity credentials verification.

Prerequisites

Before you begin:

  • Sign up for a Slack account.
  • Set up a connection, which is a source of users. Connections can be databases, social identity providers, or enterprise identity providers, and can be shared among different applications. You may set up more than one connection for use with SSO integrations.
  1. Navigate to Auth0 Dashboard > Applications > SSO Integrations, and click + Create SSO Integration. Create SSO Integration

  2. Select Slack. Select Service

  3. Click Continue to grant the integration access to the listed permissions. Authorize Service

Configure Auth0 SSO Integration

Enter a name for your SSO Integration, configure the following settings, and click Save.

Setting Description
Team Name Name of your Slack team.
Use Auth0 instead of the IdP to do Single Sign-on (SSO). **Legacy tenants only.** If enabled, Auth0 will handle SSO instead of Slack.

Save Integration

Configure integration with Slack

To configure the integration with Slack, follow the instructions listed in the Tutorial view.

Slack SSO integration

Before you continue, make sure you have your SSO integration Client ID. You will use the Client ID to replace the SSO_CLIENT_ID placeholders.

Locate Client ID

  1. Log in to Slack Authentication Settings as an administrator.

  2. Go to SAML authentication > Configure.

  3. For SAML provider, choose Custom SAML 2.0.

  4. Enter the SAML 2.0 Endpoint (HTTP) (be sure to replace the SSO_CLIENT_ID placeholder with the Client ID of your SSO Integration): https://YOUR_DOMAIN/samlp/SSO_CLIENT_ID

Alternatively, to log in with a specific identity provider, you can add a connection parameter (be sure to replace the SSO_CLIENT_ID placeholder with the Client ID of your SSO Integration):

https://YOUR_DOMAIN/samlp/SSO_CLIENT_ID?connection=email
https://YOUR_DOMAIN/samlp/SSO_CLIENT_ID?connection=google-oauth2
https://YOUR_DOMAIN/samlp/SSO_CLIENT_ID?connection=Username-Password-Authentication

In this case, Auth0 will redirect users to the specified connection and will not display the Login widget. Make sure you send the SAMLRequest using HTTP POST.

  1. (Optional) Enter the Identity Provider Issuer: urn:YOUR_DOMAIN

  2. Download your Auth0 signing certificate; copy and paste its contents as the Public certificate.

  3. Save your configuration.

Enable connections

Choose the connections to use with your SSO integration. Users in enabled connections will be allowed to log in to Slack. By default, all configured connections are enabled.

  1. Select the Connections view.

  2. Toggle the sliders next to connection names to enable or disable them. Enable/Disable Connections

For more information, check out Slack's article on enabling SAML-based Single Sign-on (SSO).