Documentation
¶
Overview ¶
Package security provides authenticated subject isolation helpers.
Index ¶
Constants ¶
const LocalSubject = "local-stdio"
LocalSubject is the shared subject for unauthenticated local transports.
Variables ¶
This section is empty.
Functions ¶
func RequireSubject ¶
RequireSubject verifies ownership without revealing cross-subject objects.
func SubjectFromContext ¶
SubjectFromContext returns the authenticated subject or the local transport subject.
Types ¶
type OwnedRecord ¶
OwnedRecord is a value associated with the subject that created it.
type RequestStateClaims ¶ added in v0.14.0
type RequestStateClaims struct {
Version int `json:"version"`
Subject string `json:"subject"`
Operation string `json:"operation"`
InputDigest string `json:"inputDigest"`
PlanDigest string `json:"planDigest"`
ExpiresAt int64 `json:"expiresAt"`
Data json.RawMessage `json:"data,omitempty"`
}
RequestStateClaims binds an MCP multi-round-trip retry to the operation that requested input.
type RequestStateSigner ¶ added in v0.14.0
type RequestStateSigner struct {
// contains filtered or unexported fields
}
RequestStateSigner signs and verifies opaque MCP multi-round-trip request state.
func NewRandomRequestStateSigner ¶ added in v0.14.0
func NewRandomRequestStateSigner() (*RequestStateSigner, error)
NewRandomRequestStateSigner constructs a signer with a process-local random key.
func NewRequestStateSigner ¶ added in v0.14.0
func NewRequestStateSigner(key []byte) (*RequestStateSigner, error)
NewRequestStateSigner constructs a signer from key. The key must contain at least 32 bytes.
func (*RequestStateSigner) Sign ¶ added in v0.14.0
func (s *RequestStateSigner) Sign(claims RequestStateClaims) (string, error)
Sign returns integrity-protected opaque request state.
func (*RequestStateSigner) Verify ¶ added in v0.14.0
func (s *RequestStateSigner) Verify(token string) (RequestStateClaims, error)
Verify authenticates and decodes opaque request state.