nak*_*kor 6 security authentication sharding mongodb
我需要以很快就会分片的数据库,并且对我最好的做法是什么在启用身份验证不清mongos
和config
服务器。
我想用密码保护一切。
auth
启用吗?谢谢!
我会一次拿这些:
每个配置服务器都应该启用身份验证吗?
是的,基本上您运行的每个 mongod 实例都应该启用 auth (和 keyfile,这意味着 auth)。
如果是这样,那么每个用户都设置相同的用户吗?只是为了管理数据库?或者是否需要为配置数据库创建一个?
分片环境中的管理数据库实际上位于配置服务器上。因此,您将在所有三个服务器上拥有管理数据库的副本(它们彼此相同)。您应该始终通过连接到配置数据库,mongos
并且不会在那里创建其他数据库,因此无需添加特定用户。
我猜你不需要在 mongos 上创建任何用户,因为它应该继承自配置和分片本身,这是正确的吗?
您添加的第一个分片(如果它具有现有数据库)将成为这些数据库的主分片(永远)。该主分片将包含这些数据库的身份验证记录,即使您随后将集合分片到多个分片也是如此。在分片后创建的任何后续数据库都可能存在于另一个分片上,并且它们的凭据将存储在那里。基本经验法则是:用于mongos
在分片环境中管理用户。
注意:上述情况在 MongoDB 2.4 及以下版本中均适用。2.6 中计划的更改将把所有凭据集中到分片环境中的配置数据库,并消除一些复杂性。然而,经验法则仍然适用,使用mongos
添加新分片时,是否需要为新分片上的每个分片数据库设置相同的用户?
正如上一个问题的答案所暗示的那样,只要您始终通过以下方式连接,mongos
就没有必要(推荐 - 它知道每个数据库的主分片是什么,并将适当地路由您的身份验证请求)。在某些边缘情况下,您可能需要在所有分片上拥有用户,在这种情况下,您必须在每个分片上添加(和维护)它们,但对于一般用途来说,这不是必需的。
归档时间: |
|
查看次数: |
4107 次 |
最近记录: |