Skip to content

[DOCS#EV-6436]: Document the RBAC management UI for Calico Enterprise - #3035

Open
dimitri-nicolo wants to merge 1 commit into
tigera:mainfrom
dimitri-nicolo:dimitri-EV-6436
Open

dimitri-nicolo wants to merge 1 commit into
tigera:mainfrom
dimitri-nicolo:dimitri-EV-6436

Conversation

@dimitri-nicolo

@dimitri-nicolo dimitri-nicolo commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

Product Version(s): Calico Enterprise 3.24 (next) only.

Issue: EV-6436 — epic EV-6431 / PMREQ-824

Link to docs preview:

(Use the calico-docs-preview-next preview — the tigera preview builds released versions only, so it redirects away from next.)

SME review:

  • An SME has approved this change.

DOCS review:

  • A member of the docs team has approved this change.

Additional information:

One new page, Grant access with custom roles and IdP groups, under Operations > Calico Enterprise Manager UI, plus its sidebar entry and a cross-link from Configure user roles and permissions.

  • calico-enterprise/operations/cnx/manage-roles.mdx (new)
  • sidebars-calico-enterprise.js
  • calico-enterprise/operations/cnx/roles-and-permissions.mdx (one link)

It covers turning role management on, connecting an identity provider directory, creating and scoping a role, seeing who has access, and copying roles to another cluster. The page is written around the console — kubectl appears only where the console has no equivalent.

Merge checklist:

  • Deploy preview inspected wherever changes were made
  • Build completed successfully
  • Test have passed

@netlify

netlify Bot commented Sep 21, 2026

Copy link
Copy Markdown

Deploy Preview for calico-docs-preview-next ready!

Name Link
🔨 Latest commit 392691f
🔍 Latest deploy log https://app.netlify.com/projects/calico-docs-preview-next/deploys/6ab2ff887277c0000813fae0
😎 Deploy Preview https://deploy-preview-3035--calico-docs-preview-next.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Sep 21, 2026

Copy link
Copy Markdown

Deploy Preview succeeded!

Built without sensitive environment variables

Name Link
🔨 Latest commit 392691f
🔍 Latest deploy log https://app.netlify.com/projects/tigera/deploys/6ab2ff88d13ffc000815f7df
😎 Deploy Preview https://deploy-preview-3035--tigera.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 68 (🔴 down 30 from production)
Accessibility: 98 (no change from production)
Best Practices: 92 (no change from production)
SEO: 100 (no change from production)
PWA: -
View the detailed breakdown and full score reports
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@dimitri-nicolo
dimitri-nicolo force-pushed the dimitri-EV-6436 branch 14 times, most recently from 8cd84c1 to e366482 Compare September 22, 2026 22:06
Add "Manage roles in the web console" under Operations > Calico Enterprise
Manager UI, covering what the feature needs to be usable: turning it on,
creating and scoping a role, granting it to a subject, binding it to an
identity provider group, reviewing who holds what, and exporting roles to
another cluster.

Scoped to Calico Enterprise 3.24 (next) only, plus its sidebar entry and a
cross-link from "Configure user roles and permissions".

Behaviour the page is deliberate about, since each is easy to get wrong:

- Role names take any non-empty string up to 253 characters, matching
  ValidateIdentity. Spaces, '@' and non-ASCII are all valid and necessary, since
  the name has to equal the group claim the IdP sends.
- Turning the feature off uses get | jq | kubectl replace, because
  tigera-network-admin holds get and update on rbac-ui-config, not patch.
- Subjects added by hand go on the ClusterRoleBindings. Those are what
  FindExistingMemberSubjects reads back, so a subject added only to a namespaced
  RoleBinding is dropped the next time the role is edited in the console.
- IdP group binding is LDAP-only and single-homed on the management cluster:
  the manager's egress opens 389/636 only when Authentication.spec.ldap is set
  and scopes the destination to spec.ldap.host, and the /team/idp-groups routes
  always target the management cluster. The directory-sync secret is a second
  secret, distinct from tigera-ldap-credentials.
- Export carries bindings, not the ClusterRoles they reference, so the target
  cluster needs role management on and the same tiers and namespaces.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@dimitri-nicolo
dimitri-nicolo marked this pull request as ready for review September 22, 2026 22:34
@dimitri-nicolo
dimitri-nicolo requested a review from a team as a code owner September 22, 2026 22:34
@dimitri-nicolo

Copy link
Copy Markdown
Contributor Author

@Dean-Coakley @ctauchen could I please get a review?

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