Implementing DSE Unified Authentication
High-level steps for implementing DSE Unified Authentication in a new deployment.
To implement authentication and authorization in an already established DSE environment additional precautions and steps are required, see Implementing without downtime in production. |
Procedure
-
To configure DSE Unified Authentication:
-
Setting security keyspaces replication factors: Ensure that required data for logins and permission management are accessible and in all datacenters.
-
Enabling DSE Unified Authentication: By default DSE Unified Authentication is disabled.
-
Configuring authentication and authorization methods (schemes):
-
Internally stored passwords, no additional configuration is required create roles with passwords as described in Managing roles
-
External LDAP, see Defining an LDAP scheme
-
Kerberos, see Defining a Kerberos scheme
-
-
Enabling DSE Unified Authentication: Requires changes to the
cassandra-env.sh
fornodetool
anddsetool
to run against an authentication enabled cluster. -
Restart DSE, see Starting and stopping.
Nodes are vulnerable to malicious activity following the restart. Anybody can access the system using the default cassandra account with password cassandra. DataStax recommends isolating the cluster until after disabling the cassandra account.
-
Set up your own root account and disable or drop the default, cassandra account, see Creating superuser accounts.
Using the default cassandra account may impact performance, all requests including login execute with consistency level QUORUM. DataStax recommends only using this account to create your root account.
-
Create roles that map to users in the configured schemes and grant permission to allow users access to database resources, such as keyspaces and tables, see Managing roles
-
Use the latest DataStax certified drivers in all applications connecting to transactional nodes that have DSE Unified Authentication enabled. DSE drivers support all the features of the Cassandra drivers and provide additional support for multiple authentication methods as well as externally managed roles assignment, see DataStax drivers.
-
Spark component limitations: DataStax Enterprise provides internal authentication support for connecting Spark to DSE transactional nodes, not for authenticating Spark components between each other.
-
What’s next
After enabling authentication and authorization, you only run tools by supplying credentials: