授权用户
您可以使用 Workload Identity Federation 将数据库用户添加到MongoDB 。这种方法使组织的身份提供商能够管理用户访问权限,确保对数据库操作进行安全、集中的身份验证。
开始之前
注意
您的oidcIdentityProviders
配置决定了授权用户必须采取的方法:
如果
useAuthorizationClaim
字段设立为false
以启用内部授权,则使用用户 ID 授权用户。如果该字段设立为
true
,则使用身份提供商群组授权用户。
步骤
1
创建 MongoDB 角色
在 admin
数据库中,使用 db.createRole()
方法创建将身份提供商群组角色映射到 MongoDB 角色的角色。
使用以下格式创建角色:
<authNamePrefix>/<authorizationClaim>
oidcIdentityProviders
参数提供 authNamePrefix
字段和 authorizationClaim
字段。例如:
db.createRole( { role: "okta/Everyone", privileges: [ ], roles: [ "readWriteAnyDatabase" ] } )
2
创建用户
要创建用户并将其添加到MongoDB 数据库,请使用db.createUser()
命令。
对user
字段使用以下格式,其中authNamePrefix
和authorizationClaim
值来自oidcIdentityProviders
参数:
<authNamePrefix>/<authorizationClaim>
要在MongoDB中创建一个 authNamePrefix
为 okta
且 authorizationClaim
为 jane.doe
的用户,请运行以下命令:
db.createUser( { user: "okta/jane.doe", roles: [ { role: "readWriteAnyDatabase", db: "admin" } ] } )
后续步骤
您可以使用 Workload Identity Federation 和以下支持的驱动程序将应用程序连接到MongoDB :