Authentication & Permissions
OCP includes Role Based Access Control (RBAC) to govern access to the API, several roles are predefined and can be assigned to a user, these are;
administrator
All operations allowed on all resourcesviewer
Read operations allowed on all resourcesowner
All operations for all resources they ownstack_owner
All operations for stacks they own
Authorized users are identified to the API through bearer tokens, the tokens are opaque and can be generated using any acceptable methodology:
cat /dev/urandom | head -c 32 | base64
Tokens are tied to a principal and assigned a role from the above list or roles using YAML configuration, see the example below:
tokens:
admin:
api-key: 7lPLBKKpmiljMa0J9GwyYWLDJKEVFXEO6ZGAjmDf5eQ=
scopes:
- role: administrator