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| Flag | Description |
|---|---|
--with <subject> | Beneficiary subject (e.g. user:alice@acme.com, sa:dev/builder), repeatable. |
--all | Target every workstation in the namespace (matchName: *). |
--admin | Elevated path: grant on any subject’s workstation (gated by RBAC; stamps an admin-scope Grant). |
--allow-missing | Create the Grant even if the target does not exist yet (pre-provisioning): skips only the existence check. |
--dry-run | Print 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/builderFlags 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| Flag | Description |
|---|---|
--with <subject> | Beneficiary the share named, repeatable. |
--all | The share targeted every object of the kind (matchName: *). |
--admin | Delete 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| Flag | Description |
|---|---|
-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| Flag | Description |
|---|---|
--mine | Only Grants you created (shared out). |
--to-me | Only Grants provided to you (you are a beneficiary). |
--enabled | Only enabled shares. |
--disabled | Only 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.comEach 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
--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.