View a markdown version of this page

Utente del database MongoDB Atlas - Gestione dei segreti AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utente del database MongoDB Atlas

Campi di valore segreti

Di seguito sono riportati i campi che devono essere contenuti nel segreto di Secrets Manager:

{ "username": "database username", "password": "database password", "clusterUrl": "cluster hostname", "databaseName": "authentication database", "groupId": "Atlas Project ID" }
username

Il nome utente del database MongoDB (). SCRAM-authenticated Questo utente deve essere configurato in MongoDB Atlas per accettare l'autenticazione SCRAM.

password

La password corrente per l'utente del database MongoDB Atlas.

ClusterURL

L'hostname del cluster MongoDB Atlas, ad esempio. cluster0.abc123.mongodb.net Non includere il prefisso mongodb+srv://. Viene utilizzato per verificare la nuova password durante la rotazione.

databaseName

Il database di autenticazione in cui sono archiviate le credenziali dell'utente. In genere admin per utenti SCRAM o $external per. X.509/LDAP

groupId

L'ID esadecimale del progetto Atlas a 24 caratteri (noto anche come ID di gruppo). Puoi trovarlo nelle impostazioni del tuo Atlas Project.

Campi di metadati segreti

Di seguito sono riportati i campi di metadati per MongoDB Atlas Database User:

{ "adminSecretArn": "arn:aws:secretsmanager:us-east-1:111122223333:secret:MongoDBAtlasServiceAccount", "apiVersion": "2025-03-12" }
admin SecretArn

L'Amazon Resource Name (ARN) per il segreto che contiene le credenziali OAuth dell'account del servizio Atlas (tipo: MongoDBAtlasServiceAccount) con autorizzazioni di amministratore di Project Database Access. Questo segreto di amministrazione viene utilizzato per l'autenticazione all'API Atlas Admin per gli aggiornamenti delle password.

Versione dell'API

(Facoltativo) La data della versione dell'API Atlas Admin nel yyyy-mm-dd formato. Questo valore viene utilizzato nell'Acceptintestazione comeapplication/vnd.atlas.{apiVersion}+json. Se non specificato, viene usato il valore predefinito 2025-03-12.

Flusso di utilizzo

Questo tipo di rotazione utilizza un'architettura a due segreti. Per l'autenticazione all'API Atlas Admin è necessario un segreto di amministrazione contenente le credenziali OAuth dell'account di servizio Atlas (clientIdclientSecret,,serviceAccountId). Il segreto di amministrazione deve essere di tipo. MongoDBAtlasServiceAccount

Puoi creare il tuo segreto usando la CreateSecretchiamata con il valore segreto contenente i campi sopra menzionati e il tipo segreto as MongoDBAtlasDatabaseUser. Le configurazioni di rotazione possono essere impostate utilizzando una RotateSecretchiamata. È necessario fornire i adminSecretArn metadati di rotazione. È inoltre necessario fornire un ruolo ARN nella RotateSecretchiamata che conceda al servizio le autorizzazioni necessarie per ruotare il segreto. Per un esempio di politica di autorizzazioni, vedi Sicurezza e autorizzazioni.

Poiché il segreto di amministrazione è di tipo diverso (MongoDBAtlasServiceAccount) rispetto al segreto dell'utente (MongoDBAtlasDatabaseUser), la politica di rotazione predefinita relativa ai ruoli non secretsmanager:resource/Type concederà l'accesso al segreto di amministrazione. È necessario fornire in modo esplicito l'accesso del ruolo di rotazione al segreto di amministrazione aggiungendo un'istruzione con ambito al MongoDBAtlasServiceAccount tipo o specificando l'ARN del segreto di amministrazione direttamente nella politica del ruolo.

Durante la rotazione, il driver genera una nuova password, chiama l'API Atlas Admin per aggiornare la password dell'utente del database e verifica la nuova password aprendo una vera connessione MongoDB al cluster. Tieni presente che c'è un ritardo di propagazione di 5-10 secondi dopo l'aggiornamento della password prima che la nuova password venga accettata dal livello di autenticazione del cluster.