sql >> Databáze >  >> NoSQL >> MongoDB

Autentizace během připojení k instanci serveru MongoDB pomocí Java

Neměli byste muset měnit všechny své stávající dotazy, měli byste pouze změnit logiku, která zakládá vašeho MongoClienta. Většina aplikací to dělá jako nějaký druh Singletonu, takže přidání ověřování je jen otázkou úpravy Singletonu. Je nepříjemné, že neexistuje podpis, který vyžaduje pouze řetězec, řetězec pro uživatelské jméno heslo, ale je to Mongo Java API, zvykněte si na zklamání.

Buď můžete jít cestou MongoURI, která vám dá nejkratší podpis...

MongoClient mongo = new MongoClient(
  new MongoClientURI( "mongodb://app_user:[email protected]/data" )
);

Nebo použijte podrobnější cestu List

List<ServerAddress> seeds = new ArrayList<ServerAddress>();
seeds.add( new ServerAddress( "localhost" );
List<MongoCredential> credentials = new ArrayList<MongoCredential>();
credentials.add(
    MongoCredential.createMongoCRCredential(
        "app_user",
        "data",
        "bestPo55word3v3r".toCharArray()
    )
);
MongoClient mongo = new MongoClient( seeds, credentials );


  1. Tipy pro plánování schématu MongoDB

  2. Pochopení odolnosti a bezpečnosti zápisu v MongoDB

  3. MongoDb:Výhoda použití ObjectID oproti řetězci obsahujícímu Id?

  4. MongoDB, Mongoose:Jak najít vnořený dokument v nalezeném dokumentu?