Skip to content

feat(iam): Add PlatformAccess resource for unified user access lifecycle#660

Open
JoseSzycho wants to merge 2 commits into
mainfrom
613-simplify-user-access-lifecycle
Open

feat(iam): Add PlatformAccess resource for unified user access lifecycle#660
JoseSzycho wants to merge 2 commits into
mainfrom
613-simplify-user-access-lifecycle

Conversation

@JoseSzycho

Copy link
Copy Markdown
Contributor

Summary

Today, governing whether a user can access the platform requires three separate resources — UserDeactivation, PlatformAccessApproval, and PlatformAccessRejection — each immutable and each answering only part of the question. Moving a user between states requires delete-then-create sequences with windows of inconsistency, and there is no single place to look to understand why a user cannot access the platform.

This PR introduces PlatformAccess, a single mutable cluster-scoped resource that owns the full access lifecycle for a user. It is the first step in the migration described in #613 and intentionally introduces only the API type; controller logic, webhook updates, and removal of the existing resources are tracked in follow-on issues.

Note

The existing UserDeactivation, PlatformAccessApproval, and PlatformAccessRejection resources are untouched in this PR. Migration of controllers, the authn webhook, and the ValidatingAdmissionPolicy in datum-cloud/datum is tracked in #658, #659, and a separate issue for the admission policy update.

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.

Simplify user access lifecycle with a single PlatformAccess resource

1 participant