Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/ / /
Manual da Biblioteca PHP
/ /

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, que utiliza o algoritmo SHA-256 para hash sua senha, é o mecanismo de autenticação padrão no MongoDB Server versão 4.0 e posterior. SCRAM-SHA-1, que usa o algoritmo SHA-1, é o mecanismo de autenticação padrão nas versões do MongoDB Server anteriores à 4.0.

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 de mecanismos de autenticação SCRAM, 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 .

SCRAM-SHA-256, as defined by RFC 7677, is the default authentication mechanism for MongoDB deployments.

Para autenticar com esse mecanismo, defina as seguintes opções de conexão:

  • username: o nome de usuário para autenticar. Porcentagem Codifique esse valor antes de incluí-lo em um URI de conexão.

  • password: A senha para autenticar. Porcentagem Codifique esse valor antes de incluí-lo em um URI de conexão.

  • authSource: O banco de banco de dados MongoDB para autenticar. Por padrão, a biblioteca PHP do MongoDB autentica no banco de banco de dados no URI de conexão, se você incluir um. Caso contrário, ele autentica no banco de banco de dados do admin .

Você pode definir essas opções de duas maneiras: passando uma array de opções para o construtor MongoDB\Client ou por meio de parâmetros em seu URI de conexão. Selecione a aba MongoDB\Client ou Connection URI para ver o código correspondente:

$uriOptions = [
'username' => '<username>',
'password' => '<password>',
'authSource' => '<authentication database>',
];
$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
$uriOptions,
);
$uri = 'mongodb://<username>:<password>@<hostname>:<port>/?authSource=admin';
$client = new MongoDB\Client($uri);

Você também pode especificar explicitamente o mecanismo de autenticação SCRAM-SHA-256 definindo a opção de conexão authMechanism como 'SCRAM-SHA-256', conforme mostrado no exemplo a seguir:

$uriOptions = [
'username' => '<username>',
'password' => '<password>',
'authSource' => '<authentication database>',
'authMechanism' => 'SCRAM-SHA-256',
];
$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
$uriOptions,
);
$uri = 'mongodb://<username>:<password>@<hostname>:<port>/?authSource=admin&authMechanism=SCRAM-SHA-256';
$client = new MongoDB\Client($uri);

SCRAM-SHA-1, as defined by RFC 5802, is a Salted Challenge Response Authentication Mechanism (SCRAM) that uses your username and password, encrypted with the SHA-1 algorithm, to authenticate your user.

Para autenticar com esse mecanismo, defina as seguintes opções de conexão:

  • username: o nome de usuário para autenticar. Porcentagem Codifique esse valor antes de incluí-lo em um URI de conexão.

  • password: A senha para autenticar. Porcentagem Codifique esse valor antes de incluí-lo em um URI de conexão.

  • authSource: O banco de banco de dados MongoDB para autenticar. Por padrão, a biblioteca PHP do MongoDB autentica no banco de banco de dados no URI de conexão, se você incluir um. Caso contrário, ele autentica no banco de banco de dados do admin .

  • authMechanism: Defina como 'SCRAM-SHA-1'.

Você pode definir essas opções de duas maneiras: passando uma array de opções para o construtor MongoDB\Client ou por meio de parâmetros em seu URI de conexão. Selecione a aba MongoDB\Client ou Connection URI para ver o código correspondente:

$uriOptions = [
'username' => '<username>',
'password' => '<password>',
'authSource' => '<authentication database>',
'authMechanism' => 'SCRAM-SHA-1',
];
$client = new MongoDB\Client(
'mongodb://<hostname>:<port>',
$uriOptions,
);
$uri = 'mongodb://<username>:<password>@<hostname>:<port>/?authSource=admin&authMechanism=SCRAM-SHA-1';
$client = new MongoDB\Client($uri);

Para saber mais sobre como criar um objeto MongoDB\Client na Biblioteca PHP do MongoDB , consulte o guia Criar um cliente MongoDB .

Para saber mais sobre as opções de conexão, consulte o guia Especificar opções de conexão.

Voltar

Autenticação

Nesta página