繁体   English   中英

可以在cassandra的连接URL中传递用户名和密码吗

[英]Can username and password be passed in connection url for cassandra

我想问一下我们是否可以在数据库连接URL中传递用户名和密码。

jdbc:cassandra:keyspace=keyspace1;host=host;port=port;user=user;password=password;

我正在为Apache Cassandra使用cdata驱动程序。 如果是的话,我该如何创建一个使用连接URL的密码的用户? 不,关于datastax的文档没有帮助我。

简而言之,是的。 除其他必要属性外,将AuthScheme连接属性设置为“基本”,并设置用户密码连接属性:

jdbc:cassandra:AuthSchem=BASIC;User=<username>;Password=<password>;...

@Aaron提供了用于创建第一个用户的解决方案: 如何在Cassandra DB中创建第一个用户

Cassandra在线CData JDBC驱动程序帮助

该驱动程序支持带有登录凭据的基本身份验证以及DataStax Enterprise(DSE)Cassandra的其他身份验证功能。 以下各节详细介绍了身份验证方法可能需要的连接属性。

您需要将AuthScheme设置为与为系统配置的身份验证器相对应的值。 您可以在cassandra.yaml文件的authenticator属性中指定身份验证器。 该文件通常位于/etc/dse/cassandra 或通过DSE Cassandra上的DSE统一身份验证器。

基本认证

通过Cassandra的内置默认PasswordAuthenticator支持基本身份验证。

  • 将AuthScheme属性设置为'BASIC'并设置用户密码属性。
  • 在cassandra.yaml文件中,将authenticator属性设置为'PasswordAuthenticator'。

Kerberos身份验证

通过DataStax Enterprise统一身份验证支持Kerberos身份验证。

  • AuthScheme属性设置为'KERBEROS'并设置用户密码属性。
  • 设置KerberosKDC,KerberosRealm和KerberosSPN属性。
  • 在cassandra.yaml文件中,将Authenticator属性设置为“ com.datastax.bdp.cassandra.auth.DseAuthenticator”。
  • 修改dse.yaml文件中的authentication_options部分,将default_schema和other_schemas属性指定为“ kerberos”。
  • 修改dse.yaml文件中的kerberos_options部分,并指定keytab,service_principle,http_principle和qop属性

LDAP验证

通过DataStax Enterprise统一身份验证支持LDAP身份验证。

  • AuthScheme属性设置为'LDAP'并设置用户和密码属性。
  • 在cassandra.yaml文件中,将Authenticator属性设置为“ com.datastax.bdp.cassandra.auth.DseAuthenticator”。
  • 修改dse.yaml文件中的authentication_options部分,将default_schema和other_schemas属性指定为'ldap'。
  • 修改dse.yaml文件中的ldap_options部分,并指定server_host,server_port,search_dn,search_password,user_search_base和user_search_filter属性

使用PKI

您可以指定客户端证书,以使用SSLClientCertSSLClientCertTypeSSLClientCertSubjectSSLClientCertPassword验证驱动程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM