當您嘗試根據數據庫對用戶進行身份驗證時,如果mongod未使用--auth參數啓動,則會出現以下錯誤:身份驗證失敗!如何知道mongodb是否需要驗證?
那麼有沒有辦法知道數據庫是否需要認證?
類似的東西:
DB db = moClient.getDB(moClientURI.getDatabase());
if (db.needsAuthentication()){
db.authenticate(username, password.toCharArray());
if (db.isAuthenticated()){
//do something
} else {} // authentication failed
}
,但[這](HTTP:// docs.mongodb.org/ecosystem/tutorial/authenticate-with-java-driver)和[this](http://www.mkyong.com/mongodb/java-authentication-access-to-mongodb)示例可能會有幫助。 –
不,已經檢查過這些鏈接。它不會告訴你如何知道mongodb是否需要認證。當然,我可以運行一個命令並檢查是否得到'認證失敗',看看它是否需要授權,但這不是一個方便的方法。 –
您可以通過db.serverCmdLineOpts()或db.adminCommand('getCmdLineOpts')啓動服務器參數 –