DocumentDB是否支持带正则库名匹配的基于角色的访问控制RBAC?
答案
MongoDB 支持情况
- 原生完全支持该需求,可以在分配角色时通过通配符匹配数据库名,实现用户仅能访问符合命名规则的数据库。
- 操作示例如下(需先切换到
admin库执行,使用拥有用户管理权限的账号操作):
db.createUser({ user: "自定义用户名", pwd: "自定义高安全强度密码", roles: [ { role: "readWrite", db: "nonprod_*" } ] })
- 注意该特性要求MongoDB版本≥3.0,仅支持前缀、后缀类的简单通配符匹配,不支持复杂正则规则。
Amazon DocumentDB 支持情况
- 作为兼容MongoDB协议的托管服务,DocumentDB完全兼容上述通配符授权规则,操作语法和MongoDB一致无需调整。
- 若使用DocumentDB 4.0以下的旧版本,需先确认实例参数组配置未限制通配符权限分配,执行命令前确保当前账号拥有用户管理权限。
补充说明:如果需要进一步限制到集合级别的访问权限,也可以在角色定义中增加
collection字段的通配符规则,例如collection: "temp_*"就能限制用户仅能操作对应库下所有temp_开头的集合。
内容的提问来源于stack exchange,提问作者yogen48
相关产品推荐
相关产品推荐

