После включения контроля доступа в защищенном кластере я могу успешно пройти проверку подлинности через mon go через порт 27018 (mongodb) и выполнять все операции, но возникают проблемы при взаимодействии через маршрутизатор через порт 27017 (mongos). не могли бы вы помочь, где я делаю неправильно. Ниже приведена трассировка стека при подключении через маршрутизатор (поскольку конечные пользователи должны использовать URL-адрес маршрутизатора для сегментированного кластера)
-bash-4.2$ bin/mongo --host `hostname` --port 27017
MongoDB shell version v4.0.6
MongoDB server version: 4.0.6
MongoDB Enterprise mongos> show dbs
MongoDB Enterprise mongos> use test
switched to db test
MongoDB Enterprise mongos> sh.status()
2020-01-20T20:57:25.527-0800 E QUERY [js] Error: error: {
"ok" : 0,
"errmsg" : "command find requires authentication",
"code" : 13,
"codeName" : "Unauthorized",
Также я попытался db.auth (), который не работал, и параметры командной строки также попытались.
Только сейчас осознал, что получаю некоторые ошибки и на экземпляре mongod.
these commands getting errors
db.help()
db.mycoll.help()
sh.help()
rs.help()
and these are not
show dbs
show collections
show users
show profile
show logs
show log [name]
use <db_name>
если я выполняю rs.status (), я получаю значение ниже
"errmsg" : "not authorized on admin to execute command