-
Notifications
You must be signed in to change notification settings - Fork 24
docs: document Warp's native workspaces model #723
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
a0e2433
f7ec5a0
75fdc93
c1afce9
86ec119
75aff26
85fe20f
17e516b
60ca926
5389a98
12c3ea1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5,7 +5,7 @@ description: >- | |
| across your organization. | ||
| --- | ||
|
|
||
| Warp uses SSO to authenticate users and control access to your organization's Warp team. This guide covers configuring SSO, testing your setup, and managing user access through your identity provider. | ||
| Warp uses SSO to authenticate users and control access to your Warp workspace. Configure SSO at the workspace level, then manage access through your identity provider. | ||
|
|
||
| ## Supported identity providers | ||
|
|
||
|
|
@@ -19,7 +19,7 @@ Warp supports the following identity providers: | |
|
|
||
| ## SSO enforcement and session management | ||
|
|
||
| * **SSO enforcement** - Admins can require SSO for all team members, preventing login via other methods. | ||
| * **SSO enforcement** - Workspace admins can require SSO for all workspace members, preventing login via other methods. | ||
| * **Multi-factor authentication** - MFA is enforced through your identity provider's policies. Warp respects MFA requirements configured in Okta, Microsoft Entra ID, Google Workspace, etc. | ||
| * **Session management** - Configurable session timeouts and re-authentication policies through your identity provider. | ||
|
|
||
|
|
@@ -28,18 +28,16 @@ Warp supports the following identity providers: | |
| SSO is configured through [WorkOS](https://workos.com) in coordination with Warp's team: | ||
|
|
||
| 1. Contact your Warp account team or [enterprise support](https://www.warp.dev/contact-sales) to initiate SSO setup. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I know this isn't directly related to this PR, but what does |
||
| 2. Warp creates an organization for your team in WorkOS and sets your team domain. | ||
| 2. Warp creates an organization for your workspace in WorkOS and sets its domain. | ||
| 3. Your IT admin receives an email invite from WorkOS. | ||
| 4. Follow the WorkOS setup wizard to connect your identity provider (configure SAML attributes or OAuth scopes, provide your SSO URL and certificate). | ||
| 5. Once complete, team members can log in via **Continue with SSO** on the [Warp login page](https://app.warp.dev/login). | ||
| 5. Once complete, workspace members can log in via **Continue with SSO** on the [Warp login page](https://app.warp.dev/login). | ||
|
|
||
| :::note | ||
| After enabling SSO, existing users who signed up with email or OAuth need to link their accounts. See [Linking existing accounts](#linking-existing-accounts) below. | ||
| ::: | ||
|
|
||
| ## Testing SSO | ||
|
|
||
| Before rolling out to your team: | ||
| Before rolling out SSO to your workspace: | ||
|
|
||
| 1. Open an incognito/private browser window. | ||
| 2. Navigate to the [Warp login page](https://app.warp.dev/login). | ||
|
|
@@ -55,12 +53,12 @@ Warp cannot be launched directly from your SSO provider's app portal (e.g., Okta | |
|
|
||
| Warp supports SCIM for user lifecycle management. Provisioning works through Just-In-Time (JIT) provisioning combined with SSO and domain capture: | ||
|
|
||
| * **User provisioning** - Add users to the Warp application in your identity provider. Once they sign in via SSO, they are automatically added to your Warp team. | ||
| * **Domain auto-join** - Users who sign in with SSO from your configured domain are automatically joined to your team. See [Domain auto-join](#domain-auto-join) for setup details. | ||
| * **User provisioning** - Add users to the Warp application in your identity provider. Once they sign in via SSO, they are automatically added to your Warp workspace. | ||
| * **Domain auto-join** - Users who sign in with SSO from your configured domain are automatically joined to your workspace. See [Domain auto-join](#domain-auto-join) for setup details. | ||
| * **User deprovisioning** - Removing a user from the Warp application in your identity provider prevents future SSO logins. Existing sessions are not immediately revoked. | ||
|
|
||
| :::note | ||
| Warp does not currently support SCIM group sync. User provisioning is handled via JIT — users appear in your Warp team after their first SSO login, not at the time they are assigned in your identity provider. | ||
| Warp does not currently support SCIM group sync. User provisioning is handled via JIT — users appear in your Warp workspace after their first SSO login, not at the time they are assigned in your identity provider. | ||
| ::: | ||
|
|
||
| ## Linking existing accounts | ||
|
|
@@ -74,13 +72,11 @@ Users who created a Warp account before your organization enabled SSO need to li | |
|
|
||
| ## Domain auto-join | ||
|
|
||
| Domain auto-join allows users from your organization to automatically join your Warp team after SSO authentication. | ||
| Domain auto-join allows users from your organization to automatically join your Warp workspace after SSO authentication. | ||
|
|
||
| :::note | ||
| Domain configuration is set up by the Warp team during onboarding. Contact your Warp account team to configure or update your team domain. | ||
| ::: | ||
| Domain configuration is set up by the Warp team during onboarding. Contact your Warp account team to configure or update your workspace domain. | ||
|
|
||
| Once your team domain is configured, users who sign in via SSO from your domain are automatically added to your Warp team. | ||
| Once your workspace domain is configured, users who sign in via SSO from that domain are automatically added to your workspace. | ||
|
|
||
| ## Troubleshooting | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,71 @@ | ||
| --- | ||
| title: Workspaces | ||
| description: >- | ||
| Workspaces group teams under one Enterprise account with shared membership, | ||
| billing, SSO, and company-wide settings. | ||
| --- | ||
|
|
||
| A workspace groups one or more teams under a single Enterprise account. Workspace admins manage membership, billing, and company-wide policies across those teams. Single Sign-On (SSO) is configured at the workspace level. | ||
|
|
||
| ## Workspaces and teams | ||
|
|
||
| A workspace provides company-wide administration, while teams organize shared resources and team-level settings. | ||
|
|
||
| * **Workspace level** - Billing, SSO, domain capture, and organization-wide policies apply across teams. | ||
| * **Team level** - Members share Warp Drive resources, cloud agent runs, environments, and secrets. | ||
| * **Membership** - A user belongs to one workspace and can belong to multiple teams within it. | ||
|
|
||
| ## Workspace roles | ||
|
|
||
| Every workspace member has one of three roles: | ||
|
|
||
| * **Member** - Uses Warp within their teams and the policies admins configure. | ||
| * **Admin** - Manages workspace membership, billing, and settings. Admins can view and manage every team, including teams they don't belong to. | ||
| * **Owner** - Has every admin capability and can transfer ownership to another member. Each workspace has one owner. | ||
|
|
||
| In team member lists, the **Workspace admin** and **Workspace owner** badges distinguish workspace roles from team roles. | ||
|
|
||
| ## Teams inside a workspace | ||
|
|
||
| Workspace admins create teams from the Admin Panel and choose a visibility: | ||
|
|
||
| * **Open** - Any workspace member can see the team and join it immediately. | ||
| * **Hidden** - The team doesn't appear in team discovery; an admin adds members directly. | ||
|
|
||
| Workspace admins can also manage every team's membership and settings. | ||
|
|
||
| ## Joining a workspace or team | ||
|
|
||
| Workspace admins add users through invitations or domain capture: | ||
|
|
||
| * **Workspace invite links** - Add a user to the workspace and let them choose an Open team. | ||
| * **Team invite links** - Add a user to an Open team and its workspace. | ||
| * **Email invites** - Add a user directly to a workspace or team. Admins add users to Hidden teams this way. | ||
| * **Domain capture** - Automatically adds users who sign up with a verified company domain. | ||
| * **Team discovery** - Shows Open teams to unassigned users in the Warp app under **Settings** > **Teams**. | ||
|
|
||
| ## Unassigned users | ||
|
|
||
| An unassigned user belongs to the workspace but not to a team. Workspace admins can manage unassigned users and set a separate per-user spend limit for them in the Admin Panel. | ||
|
|
||
| Unassigned users cannot start cloud agent or factory runs until they join a team. Workspace-level billing and policies still apply to them. | ||
|
|
||
| ## Workspace settings and team settings | ||
|
|
||
| Workspace admins configure company-wide policies in the [Admin Panel](/enterprise/team-management/admin-panel/). For supported settings, they can enforce a value across the workspace or select **Respect Team Setting** to let each team decide. | ||
|
|
||
| SSO and domain capture apply at the workspace level. When a workspace admin enforces a setting, team admins see it as locked. | ||
|
|
||
| ## Workspace spend limits | ||
|
|
||
| Workspace admins can set monthly limits for total, local agent, and cloud agent spending. They can also set a separate per-user limit for unassigned users. Team and individual limits remain independent, and the first applicable limit reached blocks further usage within its scope. | ||
|
|
||
| {/* VERIFY: confirm what team admins see when a workspace limit blocks usage before documenting that notice */} | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. i don't think there's anything unique here? they'll just see a message to contact their workspace admin here |
||
|
|
||
| ## Related pages | ||
|
|
||
| * [Team management](/enterprise/team-management/teams/) - Create and manage teams | ||
| * [Admin Panel](/enterprise/team-management/admin-panel/) - Configure settings enforced across a workspace or team | ||
| * [Roles and permissions](/enterprise/team-management/roles-and-permissions/) - Team-level roles and what each can do | ||
| * [Single Sign-On (SSO)](/enterprise/security-and-compliance/sso/) - Configure authentication for a workspace | ||
| * [Enterprise billing](/enterprise/support-and-resources/billing/) - Credit pools, spend limits, and billing management | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: is this supposed to be lower cased?
unassigned user