Skip to content

Commit bf64b59

Browse files
committed
Add Okta/SAML integration steps DOC-715
1 parent 74c1626 commit bf64b59

File tree

3 files changed

+76
-28
lines changed

3 files changed

+76
-28
lines changed
Loading
37.4 KB
Loading

src/segment-app/iam/sso.md

Lines changed: 76 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,21 @@ plan: sso
55

66
Segment supports Single Sign On for Business Tier accounts. You can use any SAML-based Identity Provider (IdP), for example Okta, Bitium, OneLogin, or Centrify, or use GSuite to serve as your identity provider, delegating access to the application based on rules you create in your central identity management solution.
77

8-
With SSO, you have centralized control over your users' ability to authenticate or not in your IdP, and can also enforce rules like two-factor authentication or password rotation at the IdP level.
8+
With SSO, you have centralized control over your users' ability to authenticate or not in your IdP. You can also enforce rules like two-factor authentication or password rotation at the IdP level.
99

10-
You can configure as many IdP connections to your workspace as needed to support IdP-initiated authentication. This allows seamless migration from one system to a new one, for example if your organization switches IdP vendors or switches from GSuite to a dedicated SAML IdP like Okta or OneLogin.
10+
You can configure as many IdP connections to your workspace as needed to support IdP-initiated authentication. This allows seamless migration from one system to a new one, if, for example, your organization switches IdP vendors or switches from GSuite to a dedicated SAML IdP like Okta or OneLogin.
1111

1212
To enable SSO-based login from the Segment login page (app.segment.com/login), you must first verify that you own the domain, and connect it to your organization's Segment account. Once you have done that, SSO users from your domain can use the Segment login page to access your default Segment workspace.
1313

1414
The Segment login page can only be connected to one workspace. To use your IdP with multiple workspaces, you will have to initiate login to the other workspaces from the IdP instead of through the login portal.
1515

1616
## Set up — SAML
1717

18-
Segment's SSO configuration is entirely self-service; we don't require any back and forth with our team in order to test and enable the feature on your workspace. Additionally, we have prebuilt connections with [Okta](https://www.okta.com/integrations/segment/), [OneLogin](https://www.onelogin.com), and [Azure AD](https://docs.microsoft.com/en-us/azure/active-directory/saas-apps/segment-tutorial) which can help you get setup faster. However, we are here to help! don't hesitate to [get in touch](https://segment.com/help/contact/) if you run into any questions or issues.
18+
Segment's SSO configuration is entirely self-service. Additionally, Segment has prebuilt connections with [Okta](https://www.okta.com/integrations/segment/){:target="_blank"}
19+
, [OneLogin](https://www.onelogin.com){:target="_blank"}, and [Azure AD](https://docs.microsoft.com/en-us/azure/active-directory/saas-apps/segment-tutorial){:target="_blank"}
20+
which can help you get set up faster. [Reach out to support](https://segment.com/help/contact/) if you run into any questions or issues.
1921

20-
To get started, go to your workspace settings and choose the "Connections" tab under "Authentication" and click "Add New Connection." Follow the steps to create a SAML connection.
22+
To get started, go to your workspace settings and navigate to **Authentication > Connections > Add new Connection**. Follow the steps to create a SAML connection.
2123

2224
![Screenshot of the Segment Authentication settings page, with the Connections tab selected.](images/asset_JR9CRr6f.png)
2325

@@ -29,7 +31,7 @@ Segment officially supports apps for Okta, Azure AD, and OneLogin. Next, find Se
2931

3032
If you're using a different IdP, you must create a custom SAML-based application.
3133

32-
Your provider will ask you for a few things from Segment, which we provide in the set up flow:
34+
Your provider will ask you for a few things from Segment, which Segment provides in the setup flow:
3335

3436
![Screenshot of the Segment Configure Identity Provider screen, with an SSO URL, Audience URL, and attribute statements entered into the respective fields.](images/asset_RRAJ92MY.png)
3537

@@ -39,11 +41,11 @@ Your provider will ask you for a few things from Segment, which we provide in th
3941

4042
- Different IdPs have different names for the Audience URL. Some call it "Audience URI", some call it "Entity ID", some call it "Service Provider Entity ID." It's likely there are only two required fields without correct defaults, and they correspond to the `SSO URL` and `Audience URL` values above.
4143

42-
- In all IdPs we've worked with, the default `NameID` option is the correct one. Make sure it's using the `emailAddress` schema.
44+
- In all IdPs Segment works with, the default `NameID` option is the correct one. Make sure it's using the `emailAddress` schema.
4345

44-
- In all IdPs we've worked with, the default connection encryption options are the correct ones. (Signed Response & Assertion Signature with SHA256, Unencrypted Assertions).
46+
- In all IdPs Segment works with, the default connection encryption options are the correct ones. (Signed Response & Assertion Signature with SHA256, Unencrypted Assertions).
4547

46-
- Different IdPs store records of your employees differently. The only attribute mapping we require is to make sure you're sending `email` . In Okta this is at `user.email`. In Duo this is `mail`.
48+
- Different IdPs store records of your employees differently. The only attribute mapping Segment requires is to make sure you're sending `email` . In Okta this is at `user.email`. In Duo this is `mail`.
4749

4850
- Make sure you've enabled "send all attributes" (not just NameID) if applicable for your IdP.
4951

@@ -59,27 +61,27 @@ Your IdP provides a URL and x.509 certificate. Copy them into their respective f
5961

6062
Then, click "Configure Connection."
6163

62-
You're all set!
64+
You're all set.
6365

6466
## Test your connection with IdP-initiated SSO.
6567

6668
Back at the connections page, make sure your connection is enabled with the switch on the right.
6769

68-
![Screenshot of the Segment Connections page, with one connection currently active.](images/asset_SNxN4JhO.png)
70+
![Screenshot of the Segment Connections page, with one connection currently active.](images/active_connections.png)
6971

7072
You can now test using IdP-initiated SSO (by clicking login to Segment from within your IdP) is working correctly. If not, double check the IdP configuration gotchas section above.
7173

7274
## Require SSO.
7375

74-
For most customers we recommend requiring SSO for all users. If you do not require SSO, users can still log in with a username and password. If some members cannot log in using SSO, Segment also supports SSO exceptions.
76+
For most customers, Segment recommends requiring SSO for all users. If you do not require SSO, users can still log in with a username and password. If some members cannot log in using SSO, Segment also supports SSO exceptions.
7577

7678
These options are off by default, but configurable on the "Advanced Settings" page.
7779

7880
![Screenshot of the Advanced Settings page in the Authentication settings tab.](images/asset_require_sso.png)
7981

80-
## Set up — GSuite
82+
## Setup — GSuite
8183

82-
GSuite configuration is incredibly simple with Segment. To get started, go to your workspace settings and choose the "Connections" tab under "Authentication" and click "Add New Connection." Follow the steps to create a "Google Apps For Work" connection.
84+
To configure GSuite for use with Segment, go to your workspace settings and choose the "Connections" tab under "Authentication" and click "Add New Connection." Follow the steps to create a "Google Apps For Work" connection.
8385

8486
You simply enter your domain (or, if you've verified it already, choose it from the dropdown) and then click the resulting link to authorize the connection.
8587

@@ -91,10 +93,10 @@ In order to enable this, you'll need to verify your domain with Segment. To do t
9193

9294
![Screenshot of the Domains page under the Authentication section of the Workspace Settings.](images/asset_MSaDZk2f.png)
9395

94-
Enter your domain and click "Add Domain." When you click verify, you're given two options to verify your domain, either using a meta tag to add to your `/index.html` at the root, or a DNS text record that you can add through your DNS provider. Once you do so and click verify, you're ready to go!
96+
Enter your domain and click "Add Domain." When you click verify, you're given two options to verify your domain, either using a meta tag to add to your `/index.html` at the root, or a DNS text record that you can add through your DNS provider. Once you do so and click verify, you're ready to go.
9597

9698
> note ""
97-
> **Note**: domain tokens expire 14 days after they are verified.
99+
> Domain tokens expire 14 days after they are verified.
98100
99101
## Configuring SSO to access multiple workspaces
100102
To configure SSO for multiple workspaces, your admin must configure access to each workspace as a separate app in your identity provider. You are unable to use verified domain(s) across multiple workspaces and will encounter the following error if you add a domain that is already verified in another workspace:
@@ -109,28 +111,74 @@ Two limitations do exist when multiple workspaces are configured to SSO access:
109111
- Users will only be able to log in to the domain-verified workspace on Segment’s login page.
110112
- Users must switch workspaces using IdP-initiated SSO, as they are unable to switch directly using the Segment UI.
111113

112-
## SSO Frequently Asked Questions
114+
## Okta setup
113115

114-
##### Do you support automatic user provisioning?
116+
The Okta/Segment SAML integration supports the following features:
115117

116-
Segment supports "just in time" user permissioning; new users who authenticate using your IdP are automatically created in Segment as minimal-access (read-only) members. If the user already exists in Segment then Segment associates the IdP-identity with the existing Segment user account.
118+
- IdP-initiated SSO
119+
- SP-initiated SSO
120+
- JIT (Just-in-time) provisioning
117121

118-
Segment also supports user provisioning and role mapping [using SCIM](/docs/segment-app/iam/scim/).
122+
For more information on these features, visit the [Okta Glossary](https://help.okta.com/en-us/content/topics/reference/glossary.htm){:target="_blank"}.
119123

120-
##### Do you support automatic user de-provisioning?
124+
### Configuration steps
121125

122-
Yes, users can be automatically de-provisioned [if you use SCIM](/docs/segment-app/iam/scim/).
126+
To set up the Okta/Segment SAML integration, you'll first carry out several steps in Segment, then finish in Okta.
123127

124-
##### Will my users lose access to their other workspaces when I enable SSO?
128+
#### Segment steps
125129

126-
Segment allows users to own their own workspaces. While your IdP authentication will ensure that any non-owners must have logged in with SSO to access _your workspace_, they can still log into Segment with username and password to access their own workspaces.
130+
Follow these steps in Segment to set up the Okta/Segment SAML integration:
131+
132+
1. Log in to Segment as an administrator.
133+
2. Navigate to **Settings > Authentication > Connections**, then click **Add new Connection**.
134+
3. Select **SAML 2.0**, then click **Select Connection**.
135+
4. On the **Configure IDP** page, copy your Customer ID, which you'll find after `?connection=` in the **Single Sign-on URL** field. You'll need this ID for a later step.
136+
- For example, if your Single Sign-On URL is `https://acme.domen.com/login/callback?connection=a1b2c3d4`, your Customer ID is `a1b2c3d4`.
137+
5. Click **Next**.
138+
6. On the **Configure Connection** page, enter your SAML 2.0 Endpoint and Public Certificate. You can generate both in your Okta Admin Dashboard. After you've entered both, click **Next**.
139+
7. (Optional:) Enter your domain, click **Add Domain**, then click **Verify**.
140+
- When you click verify, Segment gives you two options to verify your domain: using a meta tag to add to your `/index.html` file at the root, or a DNS TXT record that you can add through your DNS provider. Domain tokens expire 14 days after they are verified.
141+
- **Carry out Step 7 only if you want to enable SP-initiated flow**, otherwise click **Skip**.
142+
8. Return to **Settings > Authentication > Connections** and toggle the **Active** switch to enable your SAML configuration.
143+
144+
![Toggling the Active switch in the Segment app's Authentication Connections page](images/active_connections.png)
145+
146+
#### Okta steps
147+
148+
Finish setting up the Okta/Segment SAML integration by carrying out these steps in Okta:
149+
150+
1. In Okta, select the **Sign On** tab for the Segment SAML app, then click **Edit**.
151+
2. Enter the Customer ID you copied in Step 4 of the Segment steps.
152+
3. For **Application username format**, select **Email**.
153+
4. Click **Save**.
127154

128-
##### Can I still invite people outside the organization?
155+
![Settings in the Okta SSO tab](images/okta_sso.png)
129156

130-
Workspace owners can invite additional owners with any domain using the traditional invite mechanism.
157+
You've now completed setup. For SP-initiated SSO, follow these steps:
131158

132-
If the workspace is configured to require SSO, and the user is not on your IdP, you can add an Exemption under **Workspace Settings > Authentication > Advanced Settings**.
159+
1. Go to `https://app.segment.com`.
160+
2. Enter your email, select **Single Sign-On**, then click **Log In**.
161+
162+
163+
## SSO Frequently Asked Questions
164+
165+
{% faq %}
166+
{% faqitem Do you support automatic user provisioning? %}
167+
Segment supports "just in time" user permissioning; new users who authenticate using your IdP are automatically created in Segment as minimal-access (read-only) members. If the user already exists in Segment then Segment associates the IdP-identity with the existing Segment user account. Segment also supports user provisioning and role mapping [using SCIM](/docs/segment-app/iam/scim/).{% endfaqitem %}
168+
169+
{% faqitem Do you support automatic user de-provisioning? %}
170+
Yes, users can be automatically de-provisioned [if you use SCIM](/docs/segment-app/iam/scim/).
171+
{% endfaqitem %}
172+
173+
{% faqitem Will my users lose access to their other workspaces when I enable SSO? %}
174+
Segment allows users to own their own workspaces. While your IdP authentication will ensure that any non-owners must have logged in with SSO to access _your workspace_, they can still log into Segment with username and password to access their own workspaces.
175+
{% endfaqitem %}
133176

134-
##### How do I configure SSO to access multiple workspaces?
177+
{% faqitem Can I still invite people outside the organization? %}
178+
Workspace owners can invite additional owners with any domain using the traditional invite mechanism. If the workspace is configured to require SSO, and the user is not on your IdP, you can add an Exemption under **Workspace Settings > Authentication > Advanced Settings**.
179+
{% endfaqitem %}
135180

136-
If you would like to use SSO for multiple workspaces, your admin must configure access to each workspace as a separate app in your identity provider.
181+
{% faqitem How do I configure SSO to access multiple workspaces? %}
182+
To use SSO for multiple workspaces, your admin must configure access to each workspace as a separate app in your identity provider.
183+
{% endfaqitem %}
184+
{% endfaq %}

0 commit comments

Comments
 (0)