Używam tego połączenia URI, aby połączyć się MongoDB: mongodb://user:password@localhost/admin
. Będzie używany admin
jako uwierzytelnianie botów i docelowa baza danych. Jak mogę użyć admin
identyfikatora URI jako uwierzytelnienia, ale zezwolić na połączenie z inną bazą danych? Zobacz poniższe polecenie jako przykład:
mongo --host localhost -u user -p password --authentication admin test
powyższe polecenie będzie używane admin
jako baza danych uwierzytelniania, ale połączy się z test
bazą danych. jak mogę zrobić to samo na URI?
mongodb
mongodb-3.4
Joey Yi Zhao
źródło
źródło
Ref:
https://docs.mongodb.com/manual/reference/connection-string/#connections-connection-options
Musisz użyć poniższego formatu i nie musisz korzystać z administracyjnej bazy danych.
mongodb: // użytkownik: hasło @ localhost / test? authSource = admin
Upewnij się, że masz użytkownika w
test
bazie danych. Patrz sekcja 6 tego dokumentu.Włącz uwierzytelnianie
Utwórz dodatkowych użytkowników zgodnie z potrzebami dla swojego wdrożenia.
źródło
test
jako bazy danych uwierzytelniania, co jest nieprawidłowe. Muszę użyćadmin
jako bazy danych uwierzytelniania i połączyć się ztest
bazą danych.