Condividi tramite


Definire criteri di password personalizzati per gli accessi SQL in SQL Server su Linux

Si applica a: SQL Server 2025 (17.x) - Linux

Questo articolo descrive come configurare e gestire i criteri delle password di accesso SQL per SQL Server in Linux.

I criteri password sono un aspetto fondamentale della protezione di qualsiasi ambiente di database. Applicano:

  • Complessità
  • Scadenza
  • Cambiamenti

Questa imposizione garantisce che gli account di accesso che usano l'autenticazione di SQL Server siano sicuri.

Annotazioni

Le politiche di password sono disponibili su Windows. Per ulteriori informazioni, vedere Password Policy.

Impostazioni dei criteri personalizzate

A partire da SQL Server 2025 (17.x) in Linux, è possibile impostare i parametri di configurazione seguenti nel mssql.conf file per applicare criteri password personalizzati.

Opzione di configurazione Descrizione
passwordpolicy.passwordminimumlength Definisce il numero minimo di caratteri necessari per una password. Le password possono contenere fino a 128 caratteri.
passwordpolicy.passwordhistorylength Determina il numero di password precedenti da ricordare.
passwordpolicy.passwordminimumage Specifica la durata minima che un utente deve attendere prima di modificare nuovamente la password.
passwordpolicy.passwordmaximumage Imposta la durata massima che può essere usata una password prima che sia necessario modificarla.

Annotazioni

Attualmente, passwordminimumlength può essere impostato su meno di otto caratteri. La password deve seguire i criteri password predefiniti di SQL Server. Per impostazione predefinita, la password deve avere una lunghezza di almeno otto caratteri e contenere caratteri da tre dei quattro set seguenti: lettere maiuscole, lettere minuscole, cifre base-10 e simboli. Le password possono contenere fino a 128 caratteri. Usare password il più possibile lunghe e complesse.

Esistono due modi per configurare criteri password personalizzati per gli account di accesso con autenticazione SQL in SQL Server in Linux:

Impostare politica password personalizzata con adutil

Negli ambienti in cui la gestione dei criteri è centralizzata in un server Active Directory (AD), gli amministratori di dominio possono impostare e modificare i valori dei criteri password nel server AD. Inoltre, anche il computer Linux che esegue SQL Server deve far parte del dominio Windows.

Usare adutil per recuperare il criterio password dal server AD e scriverlo nel mssql.conf file. Questo metodo offre il vantaggio della gestione centralizzata e garantisce un'applicazione coerente dei criteri nell'ambiente SQL Server.

Requisiti per adutil

  1. Stabilire una sessione autenticata Kerberos

    • Eseguire kinit con sudo per ottenere o rinnovare il ticket di concessione Kerberos (TGT).

    • Usare un account con privilegi per il comando kinit. L'account deve disporre dell'autorizzazione per connettersi al dominio.

    Nell'esempio seguente sostituire <user> con un account con privilegi elevati nel dominio.

    sudo kinit <user>@CONTOSO.COM
    
  2. Verificare che il ticket sia concesso:

    sudo klist
    
  3. Per aggiornare i criteri di password, eseguire una query sul dominio con adutil:

    sudo adutil updatepasswordpolicy
    

    Se il comando ha esito positivo, verrà visualizzato un messaggio simile:

    Successfully updated password policy in mssqlconf.
    Restart SQL Server to apply the changes.
    

    Facoltativamente, è possibile aggiungere l'opzione --path al comando precedente. È possibile usare questa opzione se si dispone dello strumento mssql-conf in un percorso diverso dal percorso predefinito. Il percorso predefinito è /opt/mssql/bin/mssql-conf.

  4. Riavviare il servizio SQL Server:

    sudo systemctl restart mssql-server
    

Impostare manualmente i criteri personalizzati per le password con mssql-conf

È possibile impostare i criteri password di accesso per l'autenticazione SQL aggiornando i parametri nel mssql.conf file con mssql-conf. Questo approccio offre semplicità e controllo diretto sulle impostazioni dei criteri.

Usare questo metodo quando l'host Linux che esegue SQL Server non fa parte del dominio e non esiste alcun controller di dominio da cui ottenere i criteri password.

Eseguire i comandi mssql-conf seguenti per impostare ogni proprietà di configurazione dei criteri.

  1. Impostare la lunghezza minima della password su 14 caratteri, rispettando i requisiti di complessità descritti nei criteri password.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumlength 14
    
  2. Impostare la validità minima della password su un giorno. Gli utenti possono modificare la password dopo un giorno.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumage 1
    
  3. Impostare la lunghezza della cronologia delle password su 8. Gli utenti devono usare otto password univoche prima di riutilizzarne una precedente.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordhistorylength 8
    
  4. Impostare la validità massima della password su 45 giorni. Un utente può usare una password per un massimo di 45 giorni prima che l'utente debba modificarla.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordmaximumage 45
    
  5. Riavviare il servizio SQL Server.

    sudo systemctl restart mssql-server
    

Limitazioni

Attualmente, minimumpasswordlength non può essere impostato su più di 14 caratteri.

Dopo aver aggiornato i criteri password di gruppo in Active Directory, è necessario eseguire manualmente il adutil updatepasswordpolicy comando per aggiornare mssql.conf. Questo comando non viene eseguito automaticamente. Verificare che il computer Linux che esegue SQL Server faccia parte del dominio o lo imposti manualmente usando mssql-conf.

In Active Directory, ogni criterio di password del gruppo può essere definito o non definito usando una casella di controllo.

Screenshot dell'impostazione dei criteri di sicurezza per la lunghezza minima della password.

Tuttavia, deselezionando il criterio, questo non viene disabilitato anche in SQL Server su Linux. Per evitare di applicare i criteri password personalizzati, aggiornare le impostazioni in mssql-conf anziché basarsi sulla casella di controllo.