Menu Docs
Página inicial do Docs
/ /

Autenticação SCRAM

O SCRAM (Salted Challenge Response Authentication Mechanism) é uma família de mecanismos de autenticação que usa um mecanismo de desafio-resposta para autenticar o usuário. SCRAM-SHA-,256 como definido por 7677RFC, utiliza o256 algoritmo SHA- para hash sua senha, é o mecanismo de autenticação padrão para implantações que executam MongoDB v..4 0 ou mais tarde. O SCRAM-SHA-,1 conforme definido por RFC,5802 é suportado para compatibilidade com implementações que executam o MongoDB3 6v..

Você pode usar o SCRAM para autenticar no MongoDB Atlas, Enterprise Advanced e MongoDB Community Edition.

Dica

Mecanismos SCRAM

Para saber mais sobre a família SCRAM de mecanismos de autenticação, consulte RFC 5802 e Mecanismo de autenticação de resposta de desafio salgado na Wikipedia.

Para obter mais informações sobre a implementação do MongoDB do SCRAM, consulte SCRAM no manual do MongoDB Server .

Os exemplos de código nesta página usam os seguintes espaços reservados:

  • <db_username>: O nome de usuário do banco de dados MongoDB do usuário para autenticar.

  • <db_password>: A senha do banco de dados MongoDB do usuário a ser autenticado.

  • <hostname>: O endereço de rede da sua implantação MongoDB .

  • <port>: o número da porta da sua implantação do MongoDB . Se você omitir este parâmetro, o driver utilizará o número de porta padrão (27017). Você não precisa de um número de porta ao se conectar a um cluster MongoDB Atlas .

Para usar os exemplos de código nesta página, substitua esses espaços reservados por seus próprios valores.

Para utilizar o SCRAM para autenticar seu usuário MongoDB , especifique seu nome de usuário e senha do MongoDB no URI de conexão juntamente com os parâmetros authSource e authMechanism. Os exemplos nesta página usam authSource=admin, que é o banco de dados de autenticação padrão, e definem authMechanism como SCRAM-SHA-256 ou SCRAM-SHA-1.

Você pode se conectar das seguintes maneiras:

  • Ao usar apenas um URI de conexão

  • Ao usar um URI de conexão com as opções TLS (Transport Layer Security) configuradas em um objeto mongocxx::options::client

As guias a seguir mostram exemplos para SCRAM-SHA-256 e SCRAM-SHA-1, para conexões TLS e não TLS. Selecione a aba que corresponde ao mecanismo de autenticação e ao método de conexão que deseja usar.

auto uri = mongocxx::uri("mongodb://<db_username>:<db_password>@<hostname>:<port>/?"
"authSource=admin&authMechanism=SCRAM-SHA-256");
auto client = mongocxx::client(uri);
mongocxx::options::client client_options;
mongocxx::options::tls tls_options;
tls_options.pem_file("path/to/ca-or-client.pem");
client_options.tls_opts(tls_options);
auto uri = mongocxx::uri(
"mongodb://<db_username>:<db_password>@<hostname>:<port>/?"
"authSource=admin&authMechanism=SCRAM-SHA-256&tls=true");
auto client = mongocxx::client(uri, client_options);
auto uri = mongocxx::uri("mongodb://<db_username>:<db_password>@<hostname>:<port>/?"
"authSource=admin&authMechanism=SCRAM-SHA-1");
auto client = mongocxx::client(uri);
mongocxx::options::client client_options;
mongocxx::options::tls tls_options;
tls_options.pem_file("path/to/ca-or-client.pem");
client_options.tls_opts(tls_options);
auto uri = mongocxx::uri(
"mongodb://<db_username>:<db_password>@<hostname>:<port>/?"
"authSource=admin&authMechanism=SCRAM-SHA-1&tls=true");
auto client = mongocxx::client(uri, client_options);

Para saber mais sobre como criar um objeto mongocxx::client no driver C++ , consulte a seguinte documentação da API:

Voltar

Autenticação

Nesta página