Skip to content

CON-PFM-SEC-005Role Grant

Markdown

CON-PFM-SEC-005

Role Grant

Markdown
  • DocumentSuperseded
  • Product intentConfirmed
  • ImplementationObserved

Planning

Feature
FEAT-PFM-SEC-03
Owned by
MOD-PFM-SEC
Acted on by
CAP-PFM-SEC-007, CAP-PFM-SEC-008, CAP-PFM-SEC-010, CAP-PFM-SEC-011, CAP-PFM-SEC-014, CAP-PFM-SEC-015, CAP-PFM-SEC-017
Visible to
ACT-PFM-001, ACT-PFM-002, ACT-PFM-003, ACT-PFM-004
Not to be confused with
Role, Invitation, Staff access grant

KindKey conceptProduct areaPlatformModuleSecurity, Customers and WorkspacesRevision1

Read atservices-platform ad3f6a65react-console baf6dae3

The Formal Contract

The narrative above explains; the sections below are authoritative — the rules, scenarios and tests this document binds.

Definition
A role grant assigns a role to an account or an automatic contact subject within a defined scope and optional time window.
Synonyms
assignmentrole assignmentaccess

Relationships

ToStatementProvenance
CON-PFM-SEC-004Each assignment identifies one role definition.test
services-platform:modules/security/tests/integration/services/membership/manage-assignments.integration.spec.js#grants a role at customer scope, active at once for an active person, and audits it as widening
CON-PFM-SEC-003Manual assignments name accounts; automatic assignments can name contacts.test
services-platform:modules/security/tests/integration/services/persistence/assignments.derived.integration.spec.js#writes an active, contact-keyed row naming its derivation, granted by the session’s actor
CON-PFM-SEC-002Workspace-scoped assignments apply within a workspace belonging to the customer.test
services-platform:modules/security/tests/integration/services/membership/set-role-scope.integration.spec.js#turns the customer grant into one active grant per tenant asked for, revoking the customer grant
CON-PFM-SEC-006Staff access creates ordinary assignments for the customer work it authorizes.test
services-platform:modules/security/tests/integration/services/staff-access/approved-tenant-access.integration.spec.js#materializes a tenant-scoped assignment of the role, ending when the grant does

Lifecycle

StateMeaningHow it changes
pendingAn invitation offers the assignment, which authorizes no work yet.Acceptance activates it; withdrawing membership ends it.
scheduledThe assignment awaits its start time and does not authorize work before then.Reaching the start opens its validity window.
liveCurrent evaluation can use the role within the assignment’s scope and conditions.Granting to active membership, accepting an invitation or reaching the start makes it usable.
endedThe validity window has closed, leaving retained history.Reaching the end expires the assignment.
withdrawnRevocation ends the assignment while retaining its recorded history.An administrator, membership removal or the owning derivation withdraws it.

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.