Secure database objects
Authentication based on internally controlled rolename/passwords
Internal authentication allows roles-based access control (RBAC) to CQL keyspaces and tables using an associated password. Users with an appropriate role and password can use CQL commands to do CRUD operations on data or authorize and assign roles. Users can be assigned one or more roles for authentication purposes. Roles can be created with superuser, non-superuser, and login privileges. CQL authentication values are stored internally in CQL system tables.
The same internal authentication is also used by cqlsh
to authenticate connections to Cassandra clusters and sstableloader
to load SSTables.
Authorization based on object permission management
Authorization grants access permissions to CQL commands based on role authentication. Authorization can grant permission to access the entire database or restrict a role to an individual table access. Roles can be granted authorization to authorize other roles. Roles can be granted to roles. Roles can also be revoked to delete permissions or roles.
Using authentication and authorization
The cassandra.yaml
file must be configured to use authentication and authorization.
See the Secure Quickstart for information on roles and how to use them to manage access to database objects.
If roles exist and Cassandra is configured to use authentication, cqlsh
must be executed with optional authentication options.
See cqlsh with authentication for additional information.
See also: