我想在mongodb中实现数据库身份验证。
为了做到这一点,我发现我需要首先创建一个管理员用户,然后通过mongodb客户端shell(手动或使用javascript文件)为我的每个数据库创建单独的用户。
我想知道是否可以从spring应用程序本身添加用户到各个数据库,但没有得到任何有用的指针来执行此操作。是否这种方法是错误的,因为如果这可能,应用程序将始终能够访问数据库,因为它本身正在创建用户,但外部访问仍将被阻止。
请告诉我这是如何实现的,或者是否是一种不正确的方法。
答案 0 :(得分:1)
通过MongoShell添加normal用户后,您可以通过您的应用程序进行连接,创建普通用户或只读用户。
请注意,普通用户也可以添加用户,因此根据您的使用案例和需求,您的应用添加的用户可能需要作为只读用户关闭。
在MongoShell中,添加只读用户可以通过
完成use myAppDB
db.addUser("JohnSmith", "CheddarCheese", true)