繁体   English   中英

访问cassandra没有硬编码的用户名密码

[英]Accessing cassandra without hardcoded username password

我有一个正在运行的现有Datastax Cassandra设置。 我们刚刚向系统添加了身份验证,现在我们可以使用AD帐户登录。 这非常好,肯定有效。 但是,应用程序需要使用硬编码的用户名/密码才能进行连接。

在SQL Server中,我们能够设置用户运行服务,然后它将连接并通过AD工作。 然而在卡桑德拉却不一样。

如果我不想在我的app.config文件中包含用户名,特别是密码,我有哪些选择?

您可以通过LDAP使用DSE(Datastax Enterprise)进行身份验证,因此身份验证阶段是使用LDAP完成的,而不是您目前使用的DSE中的内部身份验证。 请注意,此处的注释适用于DSE5.0以上版本,但您可以在4.6以后使用早期版本的DSE进行LDAP身份验证。

文档(下面的链接)涵盖了这一点。 基本步骤如下:

  1. cassandra.yaml配置身份验证器以使用DSE身份验证器

    authenticator: com.datastax.bdp.cassandra.auth.DseAuthenticator

  2. 在cassandra中创建内部角色,以使用CREATE ROLE命令映射到LDAP服务器中的LDAP组

  3. 确保您需要使用的所有用户映射到相关的LDAP组(LDAP配置的一部分)

  4. 配置dse.yaml以使LDAP服务器具有正确的设置

  5. 重新启动DSE进程以使设置生效

以下文档提供了一些很好的示例和背景信息:

https://docs.datastax.com/en/latest-dse/datastax_enterprise/unifiedAuth/unifiedAuthConfig.html

https://docs.datastax.com/en/latest-dse/datastax_enterprise/sec/authLdapConfig.html

注意:配置dse.yaml请注意有关user_search_filter的文档中的user_search_filter

使用Active Directory时将过滤器设置为(sAMAccountName={0})

暂无
暂无

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

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