

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à.

# Gestione degli utenti di Amazon DocumentDB
<a name="security.managing-users"></a>

In Amazon DocumentDB, gli utenti si autenticano in un cluster con una password. Ogni cluster dispone di credenziali di accesso primarie stabilite durante la creazione del cluster.

**Nota**  
 Tutti i nuovi utenti creati prima del **26 marzo 2020** hanno ottenuto i ruoli `dbAdminAnyDatabase`, `readWriteAnyDatabase` e `clusterAdmin`. Ti consigliamo di rivalutare tutti gli utenti e modificare i ruoli in base alle necessità per applicare i privilegi minimi per tutti gli utenti nel cluster.   
Per ulteriori informazioni, consulta [Accesso al database tramite Role-Based Access Control](role_based_access_control.md). 

## Principale e utente `serviceadmin`
<a name="security.managing-users-master"></a>

Un cluster Amazon DocumentDB appena creato ha due utenti: l'utente principale e l'`serviceadmin`utente.

L'*utente principale* è un singolo utente privilegiato che può eseguire attività amministrative e creare utenti aggiuntivi con ruoli. Quando ti connetti a un cluster Amazon DocumentDB per la prima volta, devi autenticarti utilizzando le credenziali di accesso principali. L'utente principale riceve queste autorizzazioni amministrative per un cluster Amazon DocumentDB al momento della creazione di tale cluster e gli viene concesso il ruolo di. `root`

L' utente `serviceadmin` viene creato implicitamente quando viene creato il cluster. Ogni cluster Amazon DocumentDB ha un `serviceadmin` utente che offre AWS la possibilità di gestire il cluster. Non puoi eseguire l'accesso come `serviceadmin`, né eliminarlo, rinominarlo, modificarne la password o le autorizzazioni. Qualsiasi tentativo comporta la generazione di un errore.

**Nota**  
Il primario e `serviceadmin` gli utenti di un cluster Amazon DocumentDB non possono essere eliminati e il ruolo dell'`root`utente principale non può essere revocato.  
Se dimentichi la password dell'utente principale, puoi reimpostarla utilizzando Console di gestione AWS o il. AWS CLI

## Creazione di utenti aggiuntivi
<a name="security.managing-users-creating"></a>

Dopo esserti connesso come utente principale (o qualsiasi utente con il ruolo`createUser`), puoi creare un nuovo utente, come illustrato di seguito.

```
db.createUser(
    {
        user: "sample-user-1",
        pwd: "password123",
        roles: 
            [{"db":"admin", "role":"dbAdminAnyDatabase" }]
    }
)
```

Per visualizzare i dettagli dell'utente, puoi utilizzare il comando `show users` come segue. Puoi inoltre rimuovere gli utenti con il comando `dropUser`. Per ulteriori informazioni, consulta [Comandi comuni](role_based_access_control.md#role_based_access_control-common_commands).

```
show users
{ 
    "_id" : "serviceadmin",
    "user" : "serviceadmin",
    "db" : "admin",
    "roles" : [
    	{
            "role" : "root",
            "db" : "admin"
        }
    ]
},

{ 
    "_id" : "myPrimaryUser",
    "user" : "myPrimaryUser",
    "db" : "admin",
    "roles" : [
    	{
            "role" : "root",
            "db" : "admin"
        }
    ]
},

{
    "_id" : "sample-user-1",
    "user" : "sample-user-1",
    "db" : "admin",
    "roles" : [
    	{
            "role" : "dbAdminAnyDatabase",
            "db" : "admin"
    	}
    ]
}
```

Nel precedente esempio, il nuovo utente `sample-user-1` viene attribuito al database `admin`. Questo è sempre il caso di un nuovo utente. Amazon DocumentDB non ha il concetto di un `authenticationDatabase` e quindi tutte le autenticazioni vengono eseguite nel contesto del `admin` database.

Durante la creazione di utenti, se si omette il `db` campo quando si specifica il ruolo, Amazon DocumentDB attribuirà implicitamente il ruolo al database in cui viene emessa la connessione. Ad esempio, se la connessione viene emessa in relazione al database `sample-database` ed esegui il comando seguente, l'utente `sample-user-2` verrà creato nel database `admin` e avrà le autorizzazioni `readWrite` per il database `sample-database`.

```
db.createUser(
    {
        user: "sample-user-2", 
        pwd: "password123", 
        roles: 
            ["readWrite"]
    }
)
```

La creazione di utenti con ruoli con ambito in tutti i database (ad esempio, `readInAnyDatabase`) richiede che tu sia nell’ambito del database `admin` durante la creazione dell'utente oppure devi specificare esplicitamente il database per il ruolo durante la creazione dell'utente.

Per cambiare il contesto del database, puoi utilizzare il seguente comando.

```
use admin
```

Per ulteriori informazioni sul controllo degli accessi basato sui ruoli e sull'applicazione dei privilegi minimi tra gli utenti del cluster, consulta [Accesso al database tramite Role-Based Access Control](role_based_access_control.md). 

## Rotazione automatica delle password per Amazon DocumentDB
<a name="security.managing-users-rotating-passwords"></a>

Con Gestione dei segreti AWS, puoi sostituire le credenziali codificate nel codice (comprese le password) con una chiamata API a Secrets Manager per recuperare il segreto a livello di codice. Questo approccio aiuta a garantire che il segreto non venga compromesso da qualcuno che esamina il codice, perché semplicemente il segreto non è presente. Inoltre, puoi configurare Secrets Manager affinché ruoti automaticamente il segreto in base a una pianificazione specificata. In questo modo puoi sostituire i segreti a lungo termine con altri a breve termine, contribuendo a ridurre notevolmente il rischio di compromissione.

Utilizzando Secrets Manager, puoi ruotare automaticamente le password di Amazon DocumentDB (ovvero segrete) utilizzando AWS Lambda una *funzione* fornita da Secrets Manager.

Per ulteriori informazioni Gestione dei segreti AWS e per l'integrazione nativa con Amazon DocumentDB, consulta quanto segue:
+ [Blog: Come ruotare le credenziali di Amazon DocumentDB e Amazon Redshift in Secrets Manager AWS](https://aws.amazon.com/blogs/security/how-to-rotate-amazon-documentdb-and-amazon-redshift-credentials-in-aws-secrets-manager/)
+ [Che cos'è AWS Secrets Manager?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html)
+ [Ruota i segreti Gestione dei segreti AWS](https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotating-secrets-documentdb.html)
+ [Credenziali Amazon DocumentDB in Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/reference_secret_json_structure.html#reference_secret_json_structure_docdb)