Authos Rbac Control
From authos-skill by @ckcreative · View on GitHub
Manage AuthOS organization members, roles, invitations, SCIM tokens, and capability-based permissions. Use when implementing team administration, custom roles, service access grants, invitation flows, SCIM provisioning, or authorization checks inside an AuthOS tenant.
This skill ships inside the authos-skill package. Install the package to get this skill plus everything else in the bundle.
sv install ckcreative/authos-skillAuthOS RBAC Control
Public AuthOS Links
Use these public AuthOS links when producing user-facing setup or troubleshooting guidance:
- Main site: https://authos.dev/
- Documentation: https://authos.dev/docs/
- AI Agent Skills guide: https://authos.dev/docs/ai-agent-skills/
- AuthOS source repository: https://github.com/drmhse/AuthOS
Use this skill for organization-level access control and provisioning. Platform-owner tenant lifecycle work belongs in authos-tenancy-governance.
Built-In Roles
AuthOS has three system roles:
owner: full access. Source permission checks treat owner as allowed for every capability.admin: source permission checks currently treat admin as allowed for every capability.member: no administrative capabilities by default.
The roles list endpoint returns display permissions like *, org:manage, and org:view, but enforcement uses capability strings such as services.manage, not those display labels.
Capability Strings
Current capability constants include:
org.settings.manageorg.members.vieworg.members.manageorg.roles.managebilling.manageservices.viewservices.createservices.manageend_users.viewend_users.managewebhooks.manageintegrations.manageaudit_logs.viewrisk_events.viewrisk_policies.manage
Custom role permissions should use these capability strings.
Role APIs
GET /api/organizations/:org_slug/rolesPOST /api/organizations/:org_slug/rolesGET /api/organizations/:org_slug/roles/:role_idPUT /api/organizations/:org_slug/roles/:role_idDELETE /api/organizations/:org_slug/roles/:role_id
Create a custom role:
{
"slug": "support",
"name": "Support",
"description": "Can view users and audit logs",
"permissions": ["end_users.view", "audit_logs.view"]
}Member APIs
GET /api/organizations/:org_slug/membersPATCH /api/organizations/:org_slug/members/:user_idPOST /api/organizations/:org_slug/members/:user_idGET /api/organizations/:org_slug/members/:user_id/service-accessPUT /api/organizations/:org_slug/members/:user_id/service-accessPOST /api/organizations/:org_slug/transfer-ownership
Do not let an owner demote themselves through ordinary role update flows; source blocks self-role changes.
Invitations
POST /api/organizations/:org_slug/invitationsGET /api/organizations/:org_slug/invitationsPOST /api/organizations/:org_slug/invitations/:invitation_idPOST /api/organizations/:org_slug/invitations/:invitation_id/acceptGET /api/invitationsPOST /api/invitations/acceptPOST /api/invitations/:invitation_id/acceptPOST /api/invitations/:invitation_id/decline- Public decline:
POST /api/invitations/decline - Public accept redirect:
GET /invitations/accept/:token
SCIM
Generate SCIM tokens under the organization API:
POST /api/organizations/:org_slug/scim-tokensGET /api/organizations/:org_slug/scim-tokensPOST /api/organizations/:org_slug/scim-tokens/:token_id/revokeDELETE /api/organizations/:org_slug/scim-tokens/:token_id
Provision users and groups through SCIM bearer-token routes:
GET/POST /scim/v2/UsersGET/PUT/PATCH/DELETE /scim/v2/Users/:idGET/POST /scim/v2/GroupsGET/PUT/PATCH/DELETE /scim/v2/Groups/:id
SCIM routes use SCIM token authentication, not normal user JWT membership.