De acordo com a documentação o formato URI da cadeia de conexão é:
mongodb://[username:[email protected]]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
O
/database
parte é descrita como:Você configurou o URI assim:
spring.data.mongodb.uri = mongodb://content_rw:<secret password>@a.mongo.db:27017,b.mongo.db:27017,c.mongo.db:27017/contenttest?wtimeoutMS=300&connectTimeoutMS=500&socketTimeoutMS=200
Em seus logs podemos ver a linha:
Exception authenticating MongoCredential{mechanism=null, userName='content_rw', source='contenttest', password=<hidden>, mechanismProperties={}}
Em
MongoCredential.java
a source
é descrito como:Parece que você configurou o banco de dados de autenticação como
/contenttest
e não como:spring.data.mongodb.authentication-database=admin
Acho que você deve remover o nome do banco de dados do URI e provavelmente
spring.data.mongodb.authentication-database
propriedade, porque admin
banco de dados é usado por padrão. Além disso, veja isso:
Esta linha deve ser interessante em termos de configuração do banco de dados do aplicativo:
spring.data.mongodb.database=test # Database name.