Skip to content

ATS-PFM-CSH-014Apply the workspace and person’s application access — acceptance

Markdown

ATS-PFM-CSH-014

Apply the workspace and person’s application access — acceptance

Markdown
  • DocumentProposed

Planning

Proves capability
CAP-PFM-CSH-014

KindAcceptance test setProduct areaPlatformModuleConsole Shell and NavigationRevision2

Read atreact-console baf6dae3services-platform ad3f6a65

Test Scenarios

8 scenarios proving CAP-PFM-CSH-014; 8 bound to an existing test.

01 The context application list determines enabled sectionsunitnegativetest
Proves
BR-CAP-PFM-CSH-014-01
Preconditions
The context lists selected known products and an unknown product.
Steps
Derive console entitlements and inspect the application mapping.
Expected
Only listed known products enable their mapped domains; the mapping names existing domains and covers the console catalogue.
Data
Known and unknown application keys.
Bound to
react-console:lib/security-context/entitlements.test.ts#enables only the domains of the applications the context lists
react-console:lib/security-context/entitlements.test.ts#switches nothing on for an application the console does not know
react-console:lib/security-context/entitlements.test.ts#names an existing domain for every application
Source
react-console:lib/security-context/entitlements.test.ts#enables only the domains of the applications the context lists
02 A staff wildcard does not enable unlisted productsunitnegativetest
Proves
BR-CAP-PFM-CSH-014-03
Preconditions
The staff context grants all actions but lists CRM alone.
Steps
Derive console entitlements.
Expected
CRM is enabled and no unlisted application domain is enabled.
Data
A staff wildcard context listing CRM.
Bound to
react-console:lib/security-context/entitlements.test.ts#gives a staff wildcard no domain the applications did not give
Source
react-console:lib/security-context/entitlements.test.ts#gives a staff wildcard no domain the applications did not give
03 Backend aliases supply their mapped console permissionsunittest
Proves
BR-CAP-PFM-CSH-014-04
Preconditions
The context grants recognized backend permissions.
Steps
Evaluate the console keys associated with each backend key.
Expected
Mapped console checks pass, including one backend key supplying several console keys.
Data
Backend permission and alias inputs.
Bound to
react-console:lib/authz/__tests__/authz.test.ts#maps aliases onto registry keys
react-console:lib/authz/__tests__/backend-aliases.test.ts#lets one backend key grant several console keys
Source
react-console:lib/authz/__tests__/authz.test.ts#maps aliases onto registry keys
04 Synthetic permissions require an enabled keyless domainunittest
Proves
BR-CAP-PFM-CSH-014-05
Preconditions
A domain has no backend aliases; variants enable it, omit it or deny an item.
Steps
Derive console entitlements for each variant.
Expected
Enabled variants receive the synthetic keys except denied items; omitted domains receive none and mapped domains still need backend grants.
Data
Keyless and mapped-domain inputs.
Bound to
react-console:lib/security-context/entitlements.test.ts#grants a keyless domain's item keys when its application is enabled
react-console:lib/security-context/entitlements.test.ts#grants nothing of a keyless domain whose application is not listed
react-console:lib/security-context/entitlements.test.ts#lets a deny rule take one keyless key away
react-console:lib/security-context/entitlements.test.ts#leaves a domain with backend aliases needing its backend keys
Source
react-console:lib/security-context/entitlements.test.ts#grants a keyless domain's item keys when its application is enabled
05 Explicit refusal wins over grantsunitnegativetest
Proves
BR-CAP-PFM-CSH-014-07 BR-CAP-PFM-CSH-014-08
Preconditions
Inputs include exact grants, a prefix grant, explicit denial and no entitlements.
Steps
Evaluate the relevant permission and page checks.
Expected
Explicit denial prevails, prefix grants cover their descendants and absent authority refuses a requested permission.
Data
Permission-rule boundary inputs.
Bound to
react-console:lib/authz/__tests__/authz.test.ts#grants exact keys and prefix wildcards, and denies win
react-console:lib/console/application-guard.test.ts#refuses a page that asks for something when there are no entitlements at all
react-console:lib/authz/__tests__/backend-aliases.test.ts#answers nothing for a key it does not cover, rather than guessing
Source
react-console:lib/authz/__tests__/authz.test.ts#grants exact keys and prefix wildcards, and denies win
06 Removing a product from the context removes its domainunitnegativetest
Proves
BR-CAP-PFM-CSH-014-01
Preconditions
Two context answers differ by whether CRM is listed.
Steps
Derive entitlements from each answer.
Expected
CRM is enabled only in the answer that lists it.
Data
Contexts with and without CRM.
Bound to
react-console:lib/security-context/entitlements.test.ts#takes an application away with the access key that named it
Source
react-console:lib/security-context/entitlements.test.ts#takes an application away with the access key that named it
07 Scoped grants restrict records while permitting the surfaceunitnegativetest
Proves
BR-CAP-PFM-CSH-014-10
Preconditions
One custom type has a scoped grant, with a separate workspace-wide variant.
Steps
Check the surface, granted type and another type; repeat with the wider grant.
Expected
The surface and named type pass, another type fails and the workspace-wide grant removes the scope restriction.
Data
Scoped and unrestricted permission contexts.
Bound to
react-console:lib/security-context/entitlements.test.ts#holds the key on that object and nowhere else
react-console:lib/security-context/entitlements.test.ts#keeps a key held tenant-wide as it is, whatever a scoped grant says
Source
react-console:lib/security-context/entitlements.test.ts#holds the key on that object and nowhere else
08 Backend allowed authority overrides a stale contrary ruleunittest
Proves
BR-CAP-PFM-CSH-014-11
Preconditions
The context both allows contact read and carries a contrary stale rule.
Steps
Derive allowed and denied console keys.
Expected
Contact view remains allowed and is absent from the derived denied set.
Data
A context with contradictory allowed and rule inputs.
Bound to
react-console:lib/authz/__tests__/backend-aliases.test.ts#lets allowed win over a stale deny rule, because allowed is the authority
Source
react-console:lib/authz/__tests__/backend-aliases.test.ts#lets allowed win over a stale deny rule, because allowed is the authority

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.