我正在运行MongoDB 2.2 . 我可以添加凭据来访问我的单个实例MongoDB,如下所示:
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<property name="writeResultChecking" value="EXCEPTION"/>
<property name="writeConcern" value="FSYNC_SAFE"/>
<constructor-arg ref="myRs"/>
<constructor-arg name="databaseName" value="mydb"/>
<constructor-arg name="userCredentials" ref="userCredentials"/>
</bean>
<bean id="userCredentials" class="org.springframework.data.authentication.UserCredentials">
<constructor-arg name="username" value="username" />
<constructor-arg name="password" value="password" />
</bean>
但是文档说只有密钥文件身份验证可用于副本集:http://docs.mongodb.org/v2.2/administration/replica-sets/#replica-set-security
如何在应用程序上下文XML文件中优先使用数据库凭据(甚至是密钥文件),以便在使用Spring Data MongoDB时可以对MongoDB副本集进行身份验证?
谢谢 .
1 回答
--keyfile选项在replicaset成员之间启用基于密钥的身份验证 . 它对您的应用程序和replicaset之间的通信没有影响 .
您需要将用户添加到数据库 . 确保您已连接到Primary .
在数据库中创建用户后,您将能够使用以下内容进行连接