Generalise the CARING section 32 role set (R-2, INFO-DEC-2026-001)
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s

The role set — Principal, effective actor, Delegator, tool or agent, policy
ceiling, execution context, audit identity — now applies wherever a subject's
access is exercised through another party, rather than to non-human subjects
only.

The gap this closes is not about agents. A support operator impersonating a
customer involves no non-human subject anywhere in the path, yet without the
decomposition that operator's audit identity and policy ceiling collapse into
the customer's, which is the outcome CARING's exposure analysis exists to
prevent. CARING already names customer impersonation as an exposure mode and
ImpersonationBlocked as a control; the vocabulary for analysing it was gated to
subjects the case does not involve. Section 33 was already subject-agnostic, so
the canon applied the execution paths to any subject while restricting the roles
along those paths to non-human ones — an artifact of the section heading, not a
considered position.

Accepted narrowly. Section 32.1 stays agent-stated, with a note on reading the
capability ceiling for a human effective actor. No role is removed, renamed or
added, and section 33 is untouched. Option C, a twelfth dimension, is rejected as
duplicating sections 32 and 33 while touching a dimension set the Kubernetes RBAC
benchmark depends on.

Canon version moves to 0.4.0-RC2-itc2; source version stays 0.4.0-RC2, since
this revises the InfoTechCanon-aligned standard and claims nothing about
upstream CARING. The change is additive: an implementation that applied the set
only to non-human subjects stays conformant for those subjects.

Review record in history/; the SecurityCanon boundary file and placement record
are updated to show R-2 resolved.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3588@bnt-lap001
Assistant-Session: 24b80f66-e5a7-4e61-99fe-2d422e6d17da
This commit is contained in:
tegwick 2026-09-20 23:55:11 +02:00
parent 473c1aeca8
commit 30cf417a18
3 changed files with 106 additions and 5 deletions

View file

@ -60,7 +60,7 @@ updated_at: 2026-05-23
**CARING:** Canonical Access Roles for Information Needs Governance
**Document Status:** Release Candidate, InfoTechCanon-aligned refactor
**Source Version:** 0.4.0-RC2
**Canon Version:** 0.4.0-RC2-itc1
**Canon Version:** 0.4.0-RC2-itc2
**Document Type:** Specialized InfoTechCanon Standard
**Recommended Repository Path:** `standards/caring/InfoTechCanonCaringAccessGovernanceStandard.md`
@ -3321,7 +3321,8 @@ If a namespace is used as a tenant boundary, the analysis must verify whether th
CARING treats agents, automations, and services as first-class subjects.
For non-human subjects, access must distinguish:
Where a subject's access is exercised **through another party**, access must
distinguish:
```text
@ -3341,8 +3342,25 @@ Audit identity
```
This role set was written for non-human subjects and generalised to any subject
in canon version 0.4.0-RC2-itc2, under INFO-DEC-2026-001. The motivating case is
human-on-human: a support operator impersonating a customer involves no agent at
all, yet without this decomposition the operator's audit identity and policy
ceiling collapse into the customer's. Section 33 classifies the execution paths
— delegated, mediated, induced — over which the role set applies, and it is
already subject-agnostic.
The generalisation is additive. No role is removed or renamed, the formula in
32.1 generalises unchanged, and an implementation that applied the set only to
non-human subjects remains conformant for those subjects.
### 32.1 Agent Access Formula
The formula below is stated for the agent case, where the capability ceiling is
a property of the tool. For a human effective actor, read the ceiling as the
impersonating operator's own policy ceiling.
```text
Effective Agent Access =