

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

# Utilizzo della policy sulle password per gli accessi di SQL Server in RDS per SQL Server
<a name="SQLServer.Concepts.General.PasswordPolicy.Using"></a>

Amazon RDS consente di impostare la policy sulle password per l’istanza database Amazon RDS che esegue Microsoft SQL Server. Questa funzionalità è utile per impostare requisiti di complessità, lunghezza e blocco per gli accessi che utilizzano l’autenticazione di SQL Server per autenticarsi all’istanza database.

## Termini chiave
<a name="SQLServer.Concepts.General.PasswordPolicy.Using.KT"></a>

**Accesso**  
In SQL Server, un principale di livello server in grado di autenticarsi a un’istanza database è definita **accesso**. Altri motori di database potrebbero fare riferimento a questo principale con il termine *utente*. In RDS per SQL Server, un accesso può autenticarsi utilizzando l’autenticazione di SQL Server o quella di Windows.

**Accesso di SQL Server**  
Per accesso di SQL Server si intende un account che per autenticarsi utilizza l’autenticazione di SQL Server specificando un nome utente e una password. La policy sulle password può essere configurata tramite i parametri del database solo per gli accessi di SQL Server.

**Accesso di Windows**  
Per accesso di Windows si intende un account basato su un principale di Windows che per autenticarsi utilizza l’autenticazione di Windows. La policy sulle password per gli accessi di Windows può essere configurata in Active Directory. Per ulteriori informazioni, consulta [Utilizzo di Active Directory con RDS per SQL Server](User.SQLServer.ActiveDirectoryWindowsAuth.md).

## Abilitazione e disabilitazione della policy per ogni accesso
<a name="SQLServer.Concepts.General.PasswordPolicy.EnableDisable"></a>

 Ogni accesso di SQL Server è dotato di flag per `CHECK_POLICY` e `CHECK_EXPIRATION`. Per impostazione predefinita, i nuovi accessi vengono creati con `CHECK_POLICY` impostato su `ON` e `CHECK_EXPIRATION` impostato su `OFF`. 

Se per un accesso è abilitato `CHECK_POLICY`, RDS per SQL Server convalida la password in base ai requisiti di complessità e lunghezza minima. Sono applicabili anche policy di blocco. Di seguito è riportato un esempio di istruzione T-SQL per abilitare `CHECK_POLICY` e `CHECK_EXPIRATION`: 

```
ALTER LOGIN [master_user] WITH CHECK_POLICY = ON, CHECK_EXPIRATION = ON;
```

Se `CHECK_EXPIRATION` è abilitato, le password sono soggette a policy di validità. Di seguito è riportata l’istruzione T-SQL per verificare se `CHECK_POLICY` e `CHECK_EXPIRATION` sono impostati:

```
SELECT name, is_policy_checked, is_expiration_checked FROM sys.sql_logins;
```

## Parametri della policy sulle password
<a name="SQLServer.Concepts.General.PasswordPolicy.PWDPolicyParams"></a>

Tutti i parametri della policy sulle password sono dinamici e non richiedono il riavvio del database per diventare effettivi. Nella seguente tabella sono elencati i parametri del database che è possibile impostare per modificare la policy sulle password per gli accessi di SQL Server:


****  

| Parametro DB | Descrizione | Valori consentiti | Valore predefinito | 
| --- | --- | --- | --- | 
| rds.password\$1complexity\$1enabled | Durante la creazione o la modifica delle password per gli accessi di SQL Server devono essere soddisfatti i requisiti di complessità delle password. Di seguito sono riportati i vincoli da rispettare: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/UserGuide/SQLServer.Concepts.General.PasswordPolicy.Using.html)  | 0,1 | 0 | 
| rds.password\$1min\$1length | Il numero minimo di caratteri necessari in una password per un accesso di SQL Server. | 0-14 | 0 | 
| rds.password\$1min\$1age | Il numero minimo di giorni in cui la password di un accesso di SQL Server deve essere utilizzata prima che l’utente possa cambiarla. Se il valore è 0, le password possono essere modificate immediatamente. | 0-998 | 0 | 
| rds.password\$1max\$1age | Il numero massimo di giorni in cui è possibile utilizzare la password di un accesso di SQL Server, trascorsi i quali l’utente è tenuto a cambiarla. Se il valore è 0, le password non scadono mai. | 0-999 | 42 | 
| rds.password\$1lockout\$1threshold | Il numero di tentativi di accesso consecutivi non riusciti che causano il blocco di un accesso di SQL Server. | 0-999 | 0 | 
| rds.password\$1lockout\$1duration | Il numero di minuti che un accesso di SQL Server bloccato deve attendere prima di essere sbloccato. | 1-60 | 10 | 
| rds.password\$1lockout\$1reset\$1counter\$1after | Il numero di minuti che devono trascorrere dopo un tentativo di accesso non riuscito prima che il contatore dei tentativi di accesso non riusciti venga reimpostato su 0. | 1-60 | 10 | 

**Nota**  
Per ulteriori informazioni sulla policy relativa alle password di SQL Server, consulta la [policy sulle password](https://learn.microsoft.com/en-us/sql/relational-databases/security/password-policy).   
Le policy relative alla complessità e alla lunghezza minima delle password sono applicabili anche agli utenti di database indipendenti. Per ulteriori informazioni, consulta [Database contenuti](https://learn.microsoft.com/en-us/sql/relational-databases/databases/contained-databases).

Per i parametri della policy sulle password sono previsti i seguenti vincoli:
+ Il valore del parametro `rds.password_min_age` deve essere minore del parametro `rds.password_max_age parameter`, a meno che `rds.password_max_age` non sia impostato su 0.
+ Il valore del parametro `rds.password_lockout_reset_counter_after` deve essere minore o uguale a quello del parametro `rds.password_lockout_duration`.
+ Se `rds.password_lockout_threshold` è impostato su 0, `rds.password_lockout_duration` e `rds.password_lockout_reset_counter_after` non sono applicabili.

### Considerazioni per gli accessi esistenti
<a name="SQLServer.Concepts.General.PasswordPolicy.ExistingLogins"></a>

Dopo aver modificato la policy sulle password per un’istanza, le password esistenti per gli accessi **non** vengono valutate retroattivamente rispetto ai nuovi requisiti di complessità e lunghezza. Solo le nuove password vengono convalidate in base alla nuova policy. 

Tuttavia, SQL Server **valuta** le password esistenti in base ai requisiti di validità.

È possibile che le password scadano immediatamente dopo la modifica della policy sulle password. Ad esempio, se per un accesso è abilitato `CHECK_EXPIRATION`, la relativa password è stata modificata l’ultima volta 100 giorni fa e il parametro `rds.password_max_age` viene impostato su 5 giorni, la password scade immediatamente e deve essere cambiata al successivo tentativo di accesso.

**Nota**  
RDS per SQL Server non supporta le policy di cronologia delle password. Tali policy impediscono agli accessi di riutilizzare le password utilizzate in precedenza.

### Considerazioni per le implementazioni Multi-AZ
<a name="SQLServer.Concepts.General.PasswordPolicy.MAZPasswords"></a>

Il contatore dei tentativi di accesso non riusciti e lo stato di blocco per le istanze Multi-AZ non si replicano tra i nodi. Nel caso in cui un accesso venga bloccato durante il failover di un’istanza Multi-AZ, è possibile che risulti già sbloccato sul nuovo nodo.

# Considerazioni sulle password per l’accesso master
<a name="SQLServer.Concepts.General.PasswordPolicy.MasterLogin"></a>

Quando si crea un’istanza database RDS per SQL Server, la password dell’utente master non viene valutata rispetto alla policy sulle password. Una nuova password master non viene valutata nemmeno quando si eseguono operazioni sull’utente master, in particolare quando si imposta il comando `MasterUserPassword` o `ModifyDBInstance`. In entrambi i casi, anche se si imposta una password per l’utente master che non soddisfa la policy sulle password, l’operazione ha esito positivo. Se la policy non risulta soddisfatta, RDS tenta di generare un evento RDS, consigliando di impostare una password complessa. Fai attenzione a utilizzare solo password complesse per l’utente master. 

Quando la password dell’utente master non soddisfa i requisiti della policy sulle password, RDS tenta di generare i seguenti messaggi di evento:
+ L’utente master è stato creato, ma la password non soddisfa il requisito di lunghezza minima della policy. Prendi in considerazione l’opportunità di utilizzare una password più complessa.
+ L’utente master è stato creato, ma la password non soddisfa il requisito di complessità della policy. Prendi in considerazione l’opportunità di utilizzare una password più complessa.
+ La password dell’utente master è stata reimpostata, ma non soddisfa il requisito di lunghezza minima della policy. Prendi in considerazione l’opportunità di utilizzare una password più complessa.
+ La password dell’utente master è stata reimpostata, ma non soddisfa il requisito di complessità della policy. Prendi in considerazione l’opportunità di utilizzare una password più complessa.

Per impostazione predefinita, l’utente master viene creato con i flag `CHECK_POLICY` e `CHECK_EXPIRATION` impostati su `OFF`. Per applicare la policy delle password all’utente master, è necessario abilitare manualmente questi flag per tale utente dopo la creazione dell’istanza database. Dopo aver abilitato questi flag, modifica la password dell’utente master direttamente in SQL Server (ad esempio, tramite istruzioni T-SQL o SSMS) per convalidare la nuova password rispetto alla policy sulle password.

**Nota**  
Se l’utente master viene bloccato, è possibile sbloccarlo reimpostando la password master tramite il comando `ModifyDBInstance`.

## Modifica della password dell'utente master
<a name="SQLServer.Concepts.General.PasswordPolicy.MasterLogin.Reset"></a>

È possibile modificare la password dell’utente master utilizzando il comando [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html).

**Nota**  
Quando si reimposta la password dell’utente master, RDS reimposta diverse autorizzazioni per tale utente, che potrebbe quindi perdere alcune autorizzazioni. La reimpostazione della password dell’utente master ha anche l’effetto di sbloccare tale utente, se è stato bloccato.

RDS convalida la nuova password dell’utente master e tenta di generare un evento RDS se la password non soddisfa la policy. La password viene comunque impostata, anche se non soddisfa la policy. 