Skip to content

FAS-PFM-SEC-03People and Access Administration acceptance

Markdown

FAS-PFM-SEC-03

People and Access Administration acceptance

Markdown
  • DocumentProposed
  • Product intentProposed

Product areaPlatformModuleSecurity, Customers and WorkspacesRevision1

Read atservices-platform ad3f6a65react-console baf6dae3

Scenarios

5 scenarios proving FEAT-PFM-SEC-03 as a whole.

01 An administrator manages a colleague through the user record behaviour proposed
Exercises
CAP-PFM-SEC-008 CAP-PFM-SEC-009 CAP-PFM-SEC-010 CAP-PFM-SEC-011
Relies on
ATS-PFM-SEC-008-11 ATS-PFM-SEC-009-11 ATS-PFM-SEC-010-13 ATS-PFM-SEC-011-01
Preconditions
Two qualifying administrators protect the customer from lockout.
Steps
[object Object]
Expected
The membership, assignment and history identify the same colleague throughout the administration work.
Data
A disposable customer and workspace with run-owned memberships, assignments and definitions; clock-controlled expiry fixtures where needed.
Source
react-console:e2e/security/invitations.spec.ts#invites a new identity from the Users screen,react-console:e2e/security/users.spec.ts#edits a person's details and keeps them through a reload,react-console:e2e/security/users.spec.ts#gives a role, says who granted it, and takes it away again,services-platform:modules/security/tests/integration/services/persistence/audit-events.integration.spec.js#records the actor in their wall, the session, the keys, before and after, and the request
02 Role holders and the user assignment agree interaction proposed
Exercises
CAP-PFM-SEC-009 CAP-PFM-SEC-010
Relies on
ATS-PFM-SEC-009-01 ATS-PFM-SEC-010-13
Preconditions
A custom role and an active colleague belong to the customer.
Steps
[object Object]
Expected
The holder appears while assigned and leaves the live view after withdrawal.
Data
A disposable customer and workspace with run-owned memberships, assignments and definitions; clock-controlled expiry fixtures where needed.
Source
services-platform:modules/security/tests/e2e/console-users.e2e.spec.js#answers a page of the customer’s console users, by surname,react-console:e2e/security/users.spec.ts#gives a role, says who granted it, and takes it away again
03 A withdrawn invitation becomes a new offer on reinvitation lifecyclenegative proposed
Exercises
CAP-PFM-SEC-008 CAP-PFM-SEC-009 CAP-PFM-SEC-010
Relies on
ATS-PFM-SEC-008-03 ATS-PFM-SEC-008-08 ATS-PFM-SEC-009-05 ATS-PFM-SEC-010-05
Preconditions
A colleague has an outstanding invitation and pending access.
Steps
[object Object]
Expected
The old offer grants no access; the retained membership receives a new offer and new pending assignments.
Data
A disposable customer and workspace with run-owned memberships, assignments and definitions; clock-controlled expiry fixtures where needed.
Source
services-platform:modules/security/tests/e2e/invitations.e2e.spec.js#refuses an invitation to somebody who has already accepted, pointing at their roles instead,services-platform:modules/security/tests/e2e/invitations.e2e.spec.js#revoking a membership stops the link already in the inbox, and the account cannot come back by accepting it,services-platform:modules/security/tests/e2e/invitations.e2e.spec.js#revokes a membership with every assignment it held, and nothing undoes it,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
04 Readers cannot invite or widen access permissionnegative proposed
Exercises
CAP-PFM-SEC-008 CAP-PFM-SEC-009 CAP-PFM-SEC-010 CAP-PFM-SEC-011
Relies on
ATS-PFM-SEC-008-05 ATS-PFM-SEC-009-02 ATS-PFM-SEC-010-01 ATS-PFM-SEC-011-05
Preconditions
A read-only user and an access manager can see the same colleague.
Steps
[object Object]
Expected
Missing management or explanation authority is refused without the attempted mutation.
Data
A disposable customer and workspace with run-owned memberships, assignments and definitions; clock-controlled expiry fixtures where needed.
Source
services-platform:modules/security/tests/e2e/invitations.e2e.spec.js#lets a caller grant a role whose every key they are allowed where they are granting it,services-platform:modules/security/tests/e2e/console-users.e2e.spec.js#changes the names and answers the person again, at the next version,services-platform:modules/security/tests/e2e/console-users.e2e.spec.js#refuses the reader’s attempt to grant as 403, and grants nothing,services-platform:modules/security/tests/e2e/console-users.e2e.spec.js#refuses the reader, who may not read the history either
05 Failed lockout changes leave both access and refusal history regressionnegative proposed
Exercises
CAP-PFM-SEC-009 CAP-PFM-SEC-010 CAP-PFM-SEC-011
Relies on
ATS-PFM-SEC-009-06 ATS-PFM-SEC-010-07 ATS-PFM-SEC-011-02
Preconditions
Only one qualifying customer administrator remains.
Steps
[object Object]
Expected
The administrator remains active and both refusals are attributable after rollback.
Data
A disposable customer and workspace with run-owned memberships, assignments and definitions; clock-controlled expiry fixtures where needed.
Source
services-platform:modules/security/tests/unit/services/invitations/suspend-revoke.spec.js#refuses a suspension that would leave the customer with no security administrator, and suspends nobody,services-platform:modules/security/tests/integration/services/membership/manage-assignments.integration.spec.js#revokes the grant, keeps the row, and audits what was withdrawn,services-platform:modules/security/tests/integration/services/invitations/revoke-lockout.integration.spec.js#records the refused attempt with the guard’s reason, outside the transaction that was rolled back

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.