Authorize and issue OpenBao identity leases #12

Closed
opened 2026-08-26 07:38:30 +00:00 by agent.odin · 1 comment
Owner

Proposal

Implement OpenBao authorization, provisional lease creation, private mint dispatch, commit, and one-shot wrapped delivery for initial identity leases.

Delivery class

agent-unit — add openbao-plugin/src/issue.rs with authorization-table and private-service capture doubles.

Design

Evaluate caller, claimant, grant, principal, assignment, isolation, resource, operation, audience, TTL, active limit, digest, and projection freshness in order. Persist pre-mutation intent, call Vedanta through the private contract, and commit only after mint succeeds.

Tasks

  • Add IssueLease request, response, and stable error classes.
  • Implement the ordered authorization table.
  • Bind signed commands to the exact grant and operation.
  • Commit and wrap the credential once only after successful mint.

Specification Delta

Requirement: failed internal mint creates no lease

Scenario: Vedanta or Kanidm refuses the operation

  • GIVEN an otherwise authorized request
  • WHEN private mint fails
  • THEN OpenBao returns neither a committed lease nor credential material

OpenSpec

OpenSpec 20

Structural parent

Vedanta#20

## Proposal Implement OpenBao authorization, provisional lease creation, private mint dispatch, commit, and one-shot wrapped delivery for initial identity leases. ## Delivery class `agent-unit` — add `openbao-plugin/src/issue.rs` with authorization-table and private-service capture doubles. ## Design Evaluate caller, claimant, grant, principal, assignment, isolation, resource, operation, audience, TTL, active limit, digest, and projection freshness in order. Persist pre-mutation intent, call Vedanta through the private contract, and commit only after mint succeeds. ## Tasks - [ ] Add `IssueLease` request, response, and stable error classes. - [ ] Implement the ordered authorization table. - [ ] Bind signed commands to the exact grant and operation. - [ ] Commit and wrap the credential once only after successful mint. ## Specification Delta ### Requirement: failed internal mint creates no lease #### Scenario: Vedanta or Kanidm refuses the operation - **GIVEN** an otherwise authorized request - **WHEN** private mint fails - **THEN** OpenBao returns neither a committed lease nor credential material ## OpenSpec [OpenSpec 20](https://jo.et0.pw/Ting/Vedanta/wiki/OpenSpec-20-openbao-forge-identity-lifecycle) ## Structural parent [Vedanta#20](https://jo.et0.pw/Ting/Vedanta/issues/20)
Author
Owner

Grooming state: Clarified by later authority
Evidence: Ratified OpenSpec 61 v0.1.4, current OpenSpec 20, and the refined #12/#22 records now define one-shot wrapped delivery and a dedicated authenticated, signed OpenBao→Vedanta private-command boundary.

The former Q1 delivery-contract and Q2 plugin-authority questions are no longer open. #12 remains the initial OpenBao authorization and lease-issue implementation unit governed by its current body; #22 owns private peer and command validation.

Larandar: no owner decision remains on this record.

<!-- agent.odin:groom:v1 --> **Grooming state:** Clarified by later authority **Evidence:** Ratified [OpenSpec 61 v0.1.4](https://jo.et0.pw/Ting/Ting/wiki/OpenSpec-61-forge-identity-lifecycle-contract), current [OpenSpec 20](https://jo.et0.pw/Ting/Vedanta/wiki/OpenSpec-20-openbao-forge-identity-lifecycle), and the refined #12/#22 records now define one-shot wrapped delivery and a dedicated authenticated, signed OpenBao→Vedanta private-command boundary. The former Q1 delivery-contract and Q2 plugin-authority questions are no longer open. #12 remains the initial OpenBao authorization and lease-issue implementation unit governed by its current body; #22 owns private peer and command validation. **Larandar:** no owner decision remains on this record.
larandar changed title from OpenBao plugin: expose Vedanta-backed agent credentials to OpenBao lease backend for Vedanta-backed Forge identity credentials 2026-08-29 17:07:55 +00:00
larandar changed title from OpenBao lease backend for Vedanta-backed Forge identity credentials to Authorize and issue OpenBao identity leases 2026-08-29 19:53:27 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
Ting/Vedanta#12
No description provided.