Página inicial do Docs → Desenvolver aplicações → Drivers Python → PyMongo
Proteja seus dados
Nesta página
- Visão geral
- Aplicativo de amostra
- SCRAM-SHA-256
- SCRAM-SHA-1
- MONGODB-X509
- MONGODB-AWS
MongoClient
Credenciais- Variáveis de ambiente
- Arquivo de Credenciais Compartilhados
- Arquivo de configuração do Amazon Web Services
- Solicitação AssumeRole
- AssumeRoleWithWebIdentity
- Contêiner do ECS ou Instância do EC2
- Kerberos
- Unix
- Windows
- PLAIN SASL
- MONGODB-OIDC
- IMDS do Azure
- GCP IMDS
- Outros ambientes Azure
- GCP GKE
Visão geral
O MongoDB oferece suporte a vários mecanismos que você pode usar para autenticar seu aplicativo. Esta página contém exemplos de código que mostram cada um desses mecanismos.
Dica
Para saber mais sobre qualquer um dos mecanismos de autenticação desta página, consulte as páginas Mecanismos de autenticação e Mecanismos de autenticação empresarial .
Para usar um exemplo de autenticação desta página, copie o exemplo de código noaplicativo de amostra ou em seu próprio aplicativo. Certifique-se de substituir todos os espaços reservados nos exemplos de código, como <hostname>
, pelos valores relevantes para sua implantação do MongoDB.
Aplicativo de amostra
Você pode usar o seguinte aplicativo de exemplo para testar os exemplos de código nesta página. Para usar o aplicativo de amostra, execute as seguintes etapas:
Verifique se o PyMongo está instalado.
Copie o seguinte código e cole-o em um novo arquivo
.py
.Copie um exemplo de código desta página e cole-o nas linhas especificadas no arquivo.
1 from pymongo import MongoClient 2 3 try: 4 # start example code here 5 6 # end example code here 7 8 client.admin.command("ping") 9 print("Connected successfully") 10 11 # other application code 12 13 client.close() 14 15 except Exception as e: 16 raise Exception( 17 "The following error occurred: ", e)
SCRAM-SHA-256
Para saber mais sobre a autenticação SCRAM-SHA-256 , consulte SCRAM-SHA-256 no guia Autenticação.
SCRAM-SHA-1
Para saber mais sobre a autenticação SCRAM-SHA-1 , consulte SCRAM-SHA-1 no guia Autenticação.
MONGODB-X509
Para saber mais sobre a autenticação MONGODB-X509 , consulte MONGODB-X509 no Guia de autenticação.
MONGODB-AWS
MongoClient
Credenciais
Para saber mais sobre como autenticar com as credenciais Amazon Web Services MongoClient
, consulte Credenciais doMongoClient
no guia Autenticação.
Variáveis de ambiente
Para saber mais sobre a autenticação com variáveis de ambiente do Amazon Web Services, consulte Variáveis de ambiente no guia de Autenticação.
Arquivo de Credenciais Compartilhados
Para saber mais sobre a autenticação com um arquivo de credenciais compartilhado Amazon Web Services , consulte Arquivo de credenciais compartilhadas no guia Autenticação.
Arquivo de configuração do Amazon Web Services
Para saber mais sobre como autenticar com um arquivo de configuração do Amazon Web Services, consulte Arquivo de configuração do Amazon Web Services no guia de Autenticação.
Solicitação AssumeRole
Para saber mais sobre a autenticação com uma solicitação AssumeRole
, consulte Solicitação AssumeRole no guia Autenticação.
AssumeRoleWithWebIdentity
Para saber mais sobre a autenticação com uma solicitação AssumeRoleWithWebIdentity
, consulte AssumeRoleWithWebIdentity no guia Autenticação.
Contêiner do ECS ou Instância do EC2
Para saber mais sobre a autenticação a partir de um container do ECS, consulte Contêiner do ECS ou Instância do EC2 no guia de Autenticação.
Kerberos
Observação
Apenas MongoDB Enterprise
A autenticação Kerberos está disponível apenas no MongoDB Enterprise.
Unix
Para saber mais sobre a autenticação com Kerberos, consulte Kerberos no guia Autenticação empresarial.
Windows
Para saber mais sobre a autenticação com Kerberos, consulte Kerberos no guia Autenticação empresarial.
PLAIN SASL
Observação
Apenas MongoDB Enterprise
A autenticação PLAIN SASL está disponível apenas no MongoDB Enterprise.
Para saber mais sobre a autenticação com PLAIN SASL, consulte PLAIN SASL no guia de autenticação empresarial.
MONGODB-OIDC
Observação
Apenas MongoDB Enterprise
A autenticação MONGODB-OIDC está disponível apenas no MongoDB Enterprise.
IMDS do Azure
Para saber mais sobre autenticação com OIDC, consulte Azure IMDS no guia Autenticação.
GCP IMDS
Para saber mais sobre a autenticação com o OIDC, consulte GCP IMDS no guia Autenticação.
Outros ambientes Azure
from pymongo import MongoClient from azure.identity import DefaultAzureCredential from pymongo.auth_oidc import OIDCCallback, OIDCCallbackContext, OIDCCallbackResult # define callback, properties, and MongoClient audience = "<audience configured on the MongoDB deployment>" client_id = "<Azure client ID>" class MyCallback(OIDCCallback): def fetch(self, context: OIDCCallbackContext) -> OIDCCallbackResult: credential = DefaultAzureCredential(managed_identity_client_id=client_id) token = credential.get_token(f"{audience}/.default").token return OIDCCallbackResult(access_token=token) properties = {"OIDC_CALLBACK": MyCallback()} client = MongoClient( "mongodb://<hostname>:<port>", authMechanism="MONGODB-OIDC", authMechanismProperties=properties )
Para saber mais sobre autenticação com OIDC, consulte Outros ambientes Azure no guia Autenticação.
GCP GKE
from pymongo import MongoClient from pymongo.auth_oidc import OIDCCallback, OIDCCallbackContext, OIDCCallbackResult # define callback, properties, and MongoClient class MyCallback(OIDCCallback): def fetch(self, context: OIDCCallbackContext) -> OIDCCallbackResult: with open("/var/run/secrets/kubernetes.io/serviceaccount/token") as fid: token = fid.read() return OIDCCallbackResult(access_token=token) properties = {"OIDC_CALLBACK": MyCallback()} client = MongoClient( "mongodb://<hostname>:<port>", authMechanism="MONGODB-OIDC", authMechanismProperties=properties )
Para saber mais sobre a autenticação com o OIDC, consulte GCP GKE no guia de autenticação.