Scoped bindings
Select the correct Resource or Credential for an authenticated tenant, customer, or principal.
A scoped binding is controlled indirection between an authored logical dependency and an exact runtime target. It allows one agent deployment to serve many owners without accepting Resource or Credential identities from agent input.
Assignment key
(namespace, target class, logical key, owner kind, owner identity)
→ target CRN, target hash, binding revision, control stateThe consumer authors the target class, key, owner scope, and—when selecting a Resource—an immutable Resource contract. An operator creates assignments for exact owners.
Owner scope
| Scope | Owner selected from authenticated authority | Typical use |
|---|---|---|
| Tenant | Parent tenant | Shared API key or internal service |
| Customer | Mapped Customer CRN | Each downstream company's GitHub installation or database |
| Principal | Derived Principal CRN | Per-user OAuth grant |
The Console defaults a new assignment to tenant scope, but every selector and assignment stores its scope explicitly. There is no fallback: a missing principal binding does not use a customer or tenant Credential.
Resource assignments
An Agent's scoped Resource selector maps a local name such as github to an invokable Resource. Resolution verifies that the target Driver and operation catalog match the authored Resource contract.
Agent key github + customer Acme → service/github-acme
Agent key github + customer Globex → service/github-globexCredential assignments
An invokable Resource can declare a scoped Credential slot. The slot maps a logical key to an exact Credential:
Resource slot github-token + principal Alice → credential/github-alice-oauth
Resource slot github-token + principal Bob → credential/github-bob-oauthThe Agent does not receive these CRNs or secret values. The Broker resolves them at Resource invocation.
Runtime guarantees
Before accepting the run, Constal:
- derives the exact owner from authenticated authority;
- loads the enabled assignment head;
- authorizes
binding:use; - verifies target tenant, hash, and contract;
- attaches target Policies;
- pins the resolution and Policy decision into run identity.
Reassignments affect future resolution. They do not silently rewrite an already accepted run. A controlled rebind is an explicit safe-point operation.
Configure an assignment
In Credentials → Bindings, select New binding. Enter the logical key authored by the Agent or Resource, choose the owner scope, then select the exact target. Resource targets require a matching contract. Credential targets must be Credential Resources in the same tenant boundary.
Use Disable to pause an assignment reversibly and Revoke when it must never be used again.
Security rule
Never accept an assignment key, owner, target CRN, or Credential CRN from untrusted agent input as a substitute for a scoped selector. The authenticated authority and authored contract choose the lookup; input does not.