Sharing & access

Share a workstation or secret with a teammate, revoke access, and report effective access.

Workstations and secrets are personal: you own what you create, and peers can get/list your objects but not update, delete, SSH into, or read the values of them. To let someone else in, you create a Grant. The per-object share/unshare verbs are the everyday, self-service way to do that; the --admin flag is the elevated path for namespace admins acting on resources they don’t own.

rl workstation share <name>

Grant one or more subjects SSH access to a workstation you own. This creates a Grant object; the workstation’s authorized keys are recomputed to include the beneficiaries’ node keys.

rl workstation share my-box --with user:alice@acme.com
rl workstation share my-box --with user:alice@acme.com --with sa:dev/ci
rl workstation share --all --with user:alice@acme.com   # every workstation you own
FlagDescription
--with <subject>Beneficiary subject (e.g. user:alice@acme.com, sa:dev/builder), repeatable.
--allTarget every workstation in the namespace (matchName: *).
--adminElevated path: grant on any subject’s workstation (gated by RBAC; stamps an admin-scope Grant).
--allow-missingCreate the Grant even if the target does not exist yet (pre-provisioning): skips only the existence check.
--dry-runPrint the generated Grant instead of applying it.
-o, --output <format>With --dry-run, output format (yaml).
-n, --namespace <ns>Namespace.
--as <subject>Impersonate a subject.
--home <dir>Data directory.

rl secret share <name>

Grant subjects the access right on a secret you own: the right to read its values and to admit objects that consume it.

rl secret share db --with user:alice@acme.com
rl secret share --all --with sa:dev/builder

Flags are identical to workstation share (--with, --all, --admin, --allow-missing, --dry-run, -o, -n, --as, --home).

rl workstation unshare / rl secret unshare

Revoke a share you created: deletes the matching Grant. Name the same target and beneficiaries the share used. --admin deletes the admin-scope Grant.

rl workstation unshare my-box --with user:alice@acme.com
rl secret unshare db --with user:alice@acme.com
FlagDescription
--with <subject>Beneficiary the share named, repeatable.
--allThe share targeted every object of the kind (matchName: *).
--adminDelete the admin-scope Grant.
-n, --namespace <ns>Namespace.
--as <subject>Impersonate a subject.
--home <dir>Data directory.

rl workstation access / rl secret access

Report effective access: who can reach the resource and through which grant (ownership vs. an explicit Grant). workstation access reports who can SSH to the workstation; secret access reports who can read the secret’s value.

rl workstation access my-box
rl secret access db
FlagDescription
-n, --namespace <ns>Namespace.
--as <subject>Impersonate a subject.
--home <dir>Data directory.

rl share show

List the shares in play: the ones you created (shared out) and the ones provided to you (where you are a beneficiary). Optionally narrow to a single kind (workstation or secret).

rl share show                 # everything: yours + provided to you
rl share show workstation     # only workstation shares
rl share show --mine          # only shares you created
rl share show --to-me         # only shares provided to you
rl share show --enabled       # only currently-enabled shares
FlagDescription
--mineOnly Grants you created (shared out).
--to-meOnly Grants provided to you (you are a beneficiary).
--enabledOnly enabled shares.
--disabledOnly disabled (paused) shares.
-o, --output <format>table (default) or json.
-n, --namespace <ns>Namespace.
--as <subject>Impersonate a subject.
--home <dir>Data directory.

rl share disable / enable

Pause a share without deleting it, then resume it later. This flips the Grant’s spec.enabled flag rather than removing it, so the beneficiary list and scope are preserved. A disabled share grants nothing until re-enabled.

rl share disable workstation my-box --with user:alice@acme.com
rl share enable  workstation my-box --with user:alice@acme.com
rl share disable secret db --with user:alice@acme.com

Each takes a workstation or secret subcommand and names the same target and beneficiaries the share used (--with, repeatable; --all for a matchName: * share), plus the usual -n, --as, and --home.

owner scope vs. admin scope

Without --admin, share/unshare create owner-scoped grants. They light up a target only while you still own it, and a Grant can never hand out more than you could yourself. The --admin path creates admin-scoped grants that reach any object in the namespace, and requires namespace-admin (or broader) rights. The scope is set by the control plane from your verified rights, never trusted from the CLI. See Access control.