About DSE Unified Authentication

DSE Unified Authentication facilitates connectivity to three primary backend authentication and authorization services. DSE Unified Authentication uses the following services:

  • DSE Authenticator supports validating user identity against any of the following authentication schemes:

    • Internal: Connections provide credentials for a role that has an internally stored password, no additional configuration is required, see Managing roles.

    • LDAP: Connections provide LDAP credentials and DSE passes the credentials for verification to LDAP, see Defining an LDAP scheme.

    • Kerberos: Connections provide a Kerberos ticket, DSE is configured as a Service Principal (see Setting up Kerberos) and passes the tickets to KDS for verification, see Defining a Kerberos scheme

    When a connection request specifies an authentication scheme, DSE Authenticator validates the user against the selected scheme first. If no scheme is specified in the connection request or the validation fails, DSE Authenticator first tries the default_scheme and then each scheme defined in other_schemes in dse.yaml in order.

    To provide credentials from clients and applications, see Connecting to authentication enabled clusters.

    It is possible to authenticate users without implementing access control using the DSE Authenticator, however authentication is required for authorization and role management.

  • DSE Role Manager process used to assign roles to a user:

    • Internal: One to one mapping. Matches the user name to a DSE role. Requires a role for each user. See Creating roles for internal mode.

    • LDAP: One to many mapping. Matches the user LDAP group names to DSE roles. Users can have more than one role. See Creating roles for LDAP mode.

      For LDAP role management, DSE disables role nesting; you cannot use GRANT to assign a role to another role.

  • DSE Authorizer analyzes the request against the role permissions on each affected resource before allowing the request to be executed.

    Set and remove permissions on database resources with the CQL commands GRANT and REVOKE.

    Enable support for row-level access control, which allow permissions to be granted by filtering on a partition column, by setting authorization_options row_level_access_control to true, see Enabling DSE Unified Authentication, see Setting row-level permissions.

    Implementing DSE Unified Authentication

    Steps for implementing DSE Unified Authentication in a new deployment.

    Implementing without downtime in production

    Steps for enabling DSE Unified Authentication without downtime when implementing in a production or otherwise existing DataStax Enterprise environment.

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2024 DataStax | Privacy policy | Terms of use

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com