Bronto access control has users, groups of users, and roles that bundle permissions.
Access Control and
User Management on
docs.bronto.io explain the model, and the API reference documents
users, groups,
roles, and
permissions. The commands below follow the
shared resource pattern and need an API key with the Admin role.
Users
get prints the full record as JSON, even at a terminal.
Users resolve by email anywhere an id is accepted. The user commands beyond CRUD:
bronto users groups lists the groups a user belongs to. bronto users deactivate and
bronto users reactivate switch a user off and back on.
bronto users resend-invite sends a new invitation to a user who hasn’t accepted yet.
Groups
groups members lists members by id. Here they are Ada and Grace, as the ids in
bronto users list show.
Add or remove members with bronto groups add-members and
bronto groups remove-members. Both take users by id or email with --users, and other
groups by id or name with --groups. Each flag takes a comma-separated list or can be
repeated.
--dry-run resolves the group and the users and prints the request it would send,
without making the change:
Roles and permissions
bronto permissions list prints the permission names a role can grant:
System roles have readable ids such as Admin and ReadOnly, and a role also resolves
by its display_name.
roles update replaces the whole role, so omitted fields are cleared. Pass
display_name and the exact set of permissions the role should have. The CLI refuses an
update body without them.
Don’t copy permissions from roles get output into an update. Reads return the full
permission catalog, including permissions the role doesn’t grant.
Values passed with -f are parsed as JSON, so the permissions value above is sent as
an array.
API keys
API keys have bronto api-keys list, create, update, and delete.
list masks the key values unless you pass --reveal. See
API Keys on docs.bronto.io for the
roles a key can have.