身份验证
MongoDB Connector for BI 支持以下身份验证机制,用于对 MongoDB 进行身份验证以及对连接用户进行身份验证:
SCRAM-SHA-1
SCRAM-SHA-256
PLAIN
(LDAP)GSSAPI
(Kerberos)
BI Connector ( mongosqld
) 使用管理员档案通过MongoDB和示例数据进行凭证验证,以生成BI Connector 的模式。 当客户端连接到BI Connector时, mongosqld
会将连接客户端档案传递给MongoDB进行凭证身份验证,并根据连接用户的权限显示和限制数据。
以下部分将作为指南,帮助您配置 BI Connector 以在 MongoDB 部署中进行身份验证,配置连接到 BI Connector 的用户的身份验证,以及如何使用身份验证选项从 BI 工具格式化用户名。
MongoDB 身份认证
如果在 MongoDB 部署上启用了身份验证,则必须将 BI Connector 配置为使用所需的身份验证机制并提供管理员用户档案。 管理员用户档案必须获得授权才能查看您希望使用 BI Connector 查询的数据超集。
注意
有关如何在MongoDB 部署上配置LDAP的信息,请参阅LDAP代理身份验证。
要启用LDAP ( PLAIN
) 作为MongoDB的BI Connector身份验证机制,必须将以下设置添加到mongsqld配置文件:
mongodb: net: auth: username: <admin-username> password: <admin-password> mechanism: "PLAIN"
有关 MongoDB 主机配置文件设置的更多信息,请参阅:
要启用Kerberos ( GSSAPI
) 作为MongoDB的BI Connector身份验证机制,必须将以下设置添加到mongsqld配置文件:
mongodb: net: auth: username: <admin-username> password: <admin-password> mechanism: "GSSAPI"
有关 MongoDB 主机配置文件设置的更多信息,请参阅:
有关 Kerberos 配置的更多信息,请参阅为 BI Connector 配置 Kerberos。
BI Connector 身份验证
要启用挑战与响应 ( SCRAM-SHA-1
) 作为 BI Connector 身份验证机制,必须将security.enabled
: true
添加到mongsqld配置文件中:
security: enabled: true
SCRAM-SHA-1
是当用户名中未指定mechanism
且已启用安全功能时的默认身份验证机制。 如果要省略用户名中的source
,请在配置文件中添加并设立security.defaultSource
: <authenticationDatabase>
:
security: enabled: true defaultSource: "admin"
有关 BI Connector 配置文件设置的更多信息,请参阅:
要启用LDAP ( PLAIN
) 作为BI Connector身份验证机制,必须将security.enabled
: true
添加到mongsqld配置文件:
security: enabled: true
如果您不想在用户名中添加mechanism
和source
,请将这些选项/值对添加并设立到您的mongsqld配置文件:
security.defaultMechanism
: PLAIN
security.defaultSource
: $external
mongsqld 配置文件中生成的 安全 区块应如下所示:
security: enabled: true defaultMechanism: "PLAIN" defaultSource: "$external"
有关 BI Connector 配置文件设置的更多信息,请参阅:
要启用Kerberos ( GSSAPI
) 作为BI Connector身份验证机制,必须将security.enabled
: true
添加到mongsqld配置文件:
security: enabled: true
如果您不想在用户名中添加mechanism
和source
,请将这些选项/值对添加并设立到您的mongsqld配置文件:
security.defaultMechanism
: GSSAPI
security.defaultSource
: $external
mongsqld 配置文件中生成的 安全 区块应如下所示:
security: enabled: true defaultMechanism: "GSSAPI" defaultSource: "$external" gssapi: hostname: "<yourHostname>" serviceName: "mongosql"
有关 BI Connector 配置文件设置的更多信息,请参阅:
有关 Kerberos 配置的更多信息,请参阅为 BI Connector 配置 Kerberos。
客户端身份验证
如果您的BI 工具使用的是MongoDB BI Connector ODBC 驱动程序,则该驱动程序将处理身份验证,您无需安装身份验证插件。 如果您使用的不是 MongoDB BI Connector ODBC 驱动程序,但需要使用 BI 工具进行身份验证,请安装 C 或 JDBC 身份验证插件,具体取决于哪个插件与 BI 工具兼容:
- C 身份验证插件
- 安装 C 身份验证插件的说明,该插件有助于 BI Connector 和 SQL 客户端(例如Tableau和MySQL Shell)之间的身份验证。
- JDBC 身份验证插件
- JDBC 身份验证插件安装说明。
有关将 BI 工具连接到 BI Connector 的更多信息,请参阅连接 BI 工具。
重要
除了使用身份验证插件之外,还建议使用 TLS/SSL:
SCRAM-SHA-1
和SCRAM-SHA-256
机制对客户端插件中的密码进行哈希处理。 但是,所有其他数据均为明文形式。PLAIN
机制以明文形式发送密码。
使用--auth
运行时,MongoDB Connector for BI 需要进行身份验证。 当 MongoDB Connector for BI 从客户端收到带有身份验证档案的连接时,它会将这些档案传递到底层 MongoDB 实例。
身份验证选项
您可以在用户名后指定以下身份验证选项,作为 URI 形式的查询参数:
连接选项 | 说明 |
---|---|
source | 指定存储该用户凭证的数据库名称。如果不指定此选项,MongoDB Connector for BI 将默认使用当前与 MySQL 连接关联的数据库。 对于将凭证存储委托给其他服务的身份验证机制,例如 如果在 MongoDB Connector for BI 配置文件中设置了 |
mechanism | 指定 MongoDB Connector for BI 应使用的机制来验证连接。可被接受的值包括:
LDAP 和 Kerberos 需要 MongoDB Enterprise 。使用 LDAP 或 Kerberos 时,将源设置为 如果在 MongoDB Connector for BI 配置文件中设置了 不支持 X.509。 |
例子
以下示例展示了如何设置用户名格式,以便BI Connector使用“质询与响应”(用户名和密码)、 LDAP或Kerberos进行身份验证:
示例,要使用admin
数据库和挑战与响应 ( SCRAM-SHA-1
)身份验证机制以用户grace
身份进行身份验证,请按以下格式写入用户名:
grace?source=admin
示例,要使用LDAP ( PLAIN
)身份验证机制以用户grace
的身份进行身份验证,请按以下格式写入用户名:
grace?mechanism=PLAIN&source=$external
示例,要在 Kerberos 域 上以用户 的身份进行身份验证grace
EXAMPLE.COM
使用Kerberos身份验证机制时,请按以下格式写入用户名:
grace@EXAMPLE.COM?mechanism=GSSAPI&source=$external
有关 Kerberos 配置的更多信息,请参阅为 BI Connector 配置 Kerberos。