您可以使用 Workforce身份验证将数据库用户添加到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"       }    ] } ) 
后续步骤
您可以通过以下方式使用 Workforce Identity Federation 将应用程序连接到MongoDB :
有关MongoDB Shell OIDC 选项的更多详细信息,请参阅身份验证选项