Skip to content

docs: sync roles (enterprise) #8696

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

Merged
merged 4 commits into from
Aug 1, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
docs: role sync (enterprise)
  • Loading branch information
bpmct committed Jul 24, 2023
commit a4a8f3d1a9929c04ef36d6410af69b5cd7c1c9ce
16 changes: 16 additions & 0 deletions docs/admin/auth.md
Original file line number Diff line number Diff line change
Expand Up @@ -308,6 +308,22 @@ Steps to troubleshoot.
- [Azure AD limit is 200, and omits groups if exceeded.](https://learn.microsoft.com/en-us/azure/active-directory/hybrid/connect/how-to-connect-fed-group-claims#options-for-applications-to-consume-group-information)
- [Okta limit is 100, and returns an error if exceeded.](https://developer.okta.com/docs/reference/api/oidc/#scope-dependent-claims-not-always-returned)

## Role sync (enterprise)

If your OpenID Connect provider supports roles claims, you can configure Coder
to synchronize roles in your auth provider to deployment-wide roles within Coder.

To enable group sync, ensure that the `roles` claim is set by adding the correct scope to request. If role sync is enabled, the user's roles will be controlled by the OIDC provider. This means manual group additions/removals will be overwritten on the next login.

Set the following in your Coder server [configuration](./configure.md):

```console
CODER_OIDC_USER_ROLE_FIELD=roles
CODER_OIDC_USER_ROLE_MAPPING='{"TemplateAuthors":["template-admin","user-admin"]}'
```

> `CODER_OIDC_USER_ROLE_FIELD` can be used if a non-standard roles claim is used.

## Provider-Specific Guides

Below are some details specific to individual OIDC providers.
Expand Down
2 changes: 1 addition & 1 deletion docs/admin/groups.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Groups

Groups can be used with [template RBAC](./rbac.md) to give groups of users access to specific templates.
Groups can be used with [template RBAC](./rbac.md) to give groups of users access to specific templates. They can be defined in Coder or [synced from your identity provider](./auth.md#group-sync-enterprise).

![Groups](../images/groups.png)

Expand Down
2 changes: 1 addition & 1 deletion docs/admin/rbac.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Role Based Access Control (RBAC)

Use RBAC to define which users and [groups](./groups.md) can use specific templates in Coder.
Use RBAC to define which users and [groups](./groups.md) can use specific templates in Coder. These can be defined in Coder or [synced from your identity provider](./auth.md)

![rbac](../images/template-rbac.png)

Expand Down
1 change: 1 addition & 0 deletions docs/enterprise.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ trial](https://coder.com/trial).
| Category | Feature | Open Source | Enterprise |
| --------------- | ------------------------------------------------------------------------------------ | :---------: | :--------: |
| User Management | [Groups](./admin/groups.md) | ❌ | ✅ |
| User Management | [Group & role sync](./admin/auth.md#group-sync-enterprise) | ❌ | ✅ |
| User Management | [SCIM](./admin/auth.md#scim) | ❌ | ✅ |
| Governance | [Audit Logging](./admin/audit-logs.md) | ❌ | ✅ |
| Governance | [Browser Only Connections](./networking/#browser-only-connections-enterprise) | ❌ | ✅ |
Expand Down