Require typed issuer refusals in live registration verification
All checks were successful
Build and Publish Container Image / build-and-push (push) Successful in 40s
All checks were successful
Build and Publish Container Image / build-and-push (push) Successful in 40s
Assistant: codex Assistant-Model: gpt-5.6-luna Assistant-Session: 01a07ff8-19d0-7820-b4d0-1353833cb7fc
This commit is contained in:
parent
471465df22
commit
dcebd46fa6
6 changed files with 168 additions and 13 deletions
|
|
@ -41,10 +41,12 @@ priority: high
|
|||
state_hub_task_id: "607897c5-bad9-55e5-86df-7802f592d6e8"
|
||||
```
|
||||
|
||||
Needs deployment-owned custody for both new secret references and an exact human
|
||||
callback registration. Deploy the implementation and registrations together,
|
||||
Needs deployment-owned custody for both new service secret references and the
|
||||
upstream issuer precondition. Deploy the implementation and service registrations together,
|
||||
then prove live JWKS verification and denied excess scopes without logging values.
|
||||
Local signature proof is not live rollout evidence. See docs/approval-engine-auth-contract.md.
|
||||
The separate human UI callback gate is retained in T05; a bearer-only resource
|
||||
server does not own a redirect and its absence does not block these service clients.
|
||||
|
||||
|
||||
2026-09-05 follow-up: read-only deployment metadata shows the current image is
|
||||
|
|
@ -168,3 +170,42 @@ Evidence: `TestApprovalClientIssuesExactPlatformTenantAndRejectsAliases` (exact
|
|||
client's tenant against the real fixture so a reintroduced alias fails the build.
|
||||
Full `go test ./...` and `go vet ./...` pass. Choice only — live provisioning and
|
||||
the other admission gates remain with KEY-WP-0013-T02.
|
||||
|
||||
## Assign and register the human approver browser client
|
||||
|
||||
```task
|
||||
id: KEY-WP-0013-T05
|
||||
status: wait
|
||||
priority: high
|
||||
assignee: the-custodian
|
||||
blocking_reason: "An actual approver UI owner, client ID and deployed callback are not yet supplied. approval-engine is a bearer-only resource server."
|
||||
```
|
||||
|
||||
Own the residual human registration separately from service-client T02. Reuse
|
||||
an existing accepted UI if available; do not invent a callback on approval-engine.
|
||||
Require public S256 PKCE, exact redirect, MFA, approval:approve without consume,
|
||||
and a real human access-token proof. No service credential substitutes for this.
|
||||
HFACT-WP-0001-T03 consumes the acceptance where a human approval is required.
|
||||
|
||||
## Make negative rollout evidence discriminate actual issuer refusal
|
||||
|
||||
```task
|
||||
id: KEY-WP-0013-T06
|
||||
status: progress
|
||||
priority: high
|
||||
assignee: the-custodian
|
||||
```
|
||||
|
||||
Critical-path review found `mustFail` accepted any Exchange error: timeout,
|
||||
HTTP 5xx, invalid token or JWKS failure could falsely prove excess-scope denial
|
||||
or predecessor rejection after a successful positive exchange. Preserve a bounded
|
||||
typed provider refusal, require the exact token endpoint/status/error/feature,
|
||||
and prove the checker rejects unrelated failures without exposing provider bodies.
|
||||
Publish the verified image candidate and return its immutable digest to T02.
|
||||
|
||||
Platform's 2026-09-08 return is RPF-WP-0035-T05 and proposed CCR-2026-0017/0018.
|
||||
The custody field is `CLIENT_SECRET`; Kubernetes key `client-secret` and both env
|
||||
names remain as requested. These records cover verifier-side delivery only.
|
||||
Owner approval, client-side retrieval and the actual upstream ID-token issuer
|
||||
proof remain distinct gates. Public discovery currently advertises
|
||||
`https://auth.coulomb.social`; that alone is not the signed-token observation.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue