The account task set groups: [] with append: false, so the next run would have removed custodian-agt from gated-executor's exchange group. Allowed groups are now an explicit per-account inventory list, refused if forbidden, and asserted as the exact set by goss; container test covers an unlisted group. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Assistant: claude-code Assistant-Model: opus Assistant-Process: 605711@bnt-lap001 Assistant-Session: 1f5e2256-181f-49ed-b7b1-a1c34bf37a61
36 lines
1.3 KiB
YAML
36 lines
1.3 KiB
YAML
# Central SSH certificate principals inventory — synced with ops-warden actor
|
|
# principals (wiki/ActorInventoryPatterns.md). Public data only.
|
|
|
|
ssh_principals:
|
|
CoulombCore:
|
|
users:
|
|
tegwick:
|
|
- agt-task-bridge
|
|
- agt-interhub-bootstrap
|
|
- adm-full
|
|
- atm-backup-daily
|
|
|
|
Railiance01:
|
|
users:
|
|
tegwick:
|
|
- agt-task-bridge
|
|
- agt-interhub-bootstrap
|
|
- adm-full
|
|
- atm-backup-daily
|
|
# CUST-WP-0073-T02 / RAIL-HO-WP-0014: supervised interactive agent.
|
|
# agt-custodian maps ONLY to this restricted account and ONLY on
|
|
# Railiance01; never add it to tegwick or another host.
|
|
custodian-agt:
|
|
- agt-custodian
|
|
# Accounts converged by ssh_ca_host as restricted agent accounts:
|
|
# locked password, home 0700, no supplementary groups, no sudoers entry,
|
|
# no authorized_keys, and an sshd Match block (certificate only, no
|
|
# forwarding/tunnel/user RC). Each must also appear under users above.
|
|
restricted_accounts:
|
|
- custodian-agt
|
|
# The only supplementary groups a restricted account may hold. gexec-review
|
|
# lets the agent exchange proposals/approvals with gated-executor
|
|
# (GEXEC-WP-0001); it carries no privilege. Asserted as the exact set.
|
|
restricted_account_groups:
|
|
custodian-agt:
|
|
- gexec-review
|