Skip to content

SCIM: how custom workspace roles behave - #154

Draft
bbereti wants to merge 1 commit into
mainfrom
docs-impact/scim-custom-workspace-roles
Draft

SCIM: how custom workspace roles behave#154
bbereti wants to merge 1 commit into
mainfrom
docs-impact/scim-custom-workspace-roles

Conversation

@bbereti

@bbereti bbereti commented Aug 4, 2026

Copy link
Copy Markdown

Why

Follow-up to a review comment on bitrise-website#20460 (AssignSCIMRoles). That PR makes a workspace's own custom role eligible as a member's workspace access level, which changes what a SCIM admin observes:

  • The held-role lookup now includes the workspace's custom workspace-scoped roles, so a sync clears a custom role instead of leaving it beside the newly-synced built-in.
  • The target lookup stays restricted to the built-in roles, so an IdP cannot name a custom role — the request is rejected before anything is written, and the member keeps the role they had.

configuring-scim.mdx already documents the replace-on-present semantics for the built-ins, so it was incomplete rather than wrong.

What

One new ### Custom workspace roles and SCIM subsection, plus a pointer to it from the available-roles table. No other pages touched — custom roles aren't introduced anywhere in the docs yet; that belongs with the feature's own docs work.

Do not merge yet

Draft on purpose: the feature isn't available to customers. bitrise-website#20460 is PR2 of a series and the role pickers land in #20464. Merge once custom roles are live.

Verify before merge

  • An IdP naming a custom role really does fail the SCIM request (Twirp not_found) with the member's role untouched
  • A sync replacing a held custom role matches what the product team wants documented as intended behavior, not a caveat to fix
  • Wording of "custom role" matches whatever the feature ends up being called in the UI

node scripts/check-links-source.js clean on the edited page.

🤖 Generated with Claude Code

An IdP can only name the three built-in workspace roles; a request naming a
custom role is rejected and leaves the member's role alone. And because a
member has one workspace role at a time, a SCIM push replaces a custom role
that was assigned on Bitrise — including via an empty `roles` array.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant