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 (autenticato con SCRAM). 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.netNon includere il prefissomongodb+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
adminper utenti SCRAM o$externalper 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" }
- adminSecretArn
-
L'Amazon Resource Name (ARN) per il segreto che contiene le OAuth credenziali dell'account del servizio Atlas (tipo: Mongo DBAtlasServiceAccount) 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 API
-
(Facoltativo) La data della versione dell'API Atlas Admin nel
yyyy-mm-ddformato. Questo valore viene utilizzato nell'Acceptintestazione comeapplication/vnd.atlas.{apiVersion}+json. Se non specificato, viene usato il valore predefinito2025-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 OAuth le credenziali dell'account del servizio Atlas (clientIdclientSecret,,serviceAccountId). Il segreto di amministrazione deve essere di tipo Mongo. DBAtlas ServiceAccount
Puoi creare il tuo segreto usando la CreateSecretchiamata con il valore segreto contenente i campi sopra menzionati e il tipo segreto come DBAtlas DatabaseUser Mongo. 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 dell'amministratore è di un tipo diverso (Mongo DBAtlasServiceAccount) rispetto al segreto dell'utente (Mongo DBAtlasDatabaseUser), la politica di rotazione predefinita relativa ai ruoli non secretsmanager:resource/Type concederà l'accesso al segreto di amministrazione. È necessario fornire esplicitamente l'accesso del ruolo di rotazione al segreto di amministrazione aggiungendo un'istruzione con ambito al DBAtlas ServiceAccount tipo Mongo 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.