Eventi
31 mar, 23 - 2 apr, 23
Il più grande evento di apprendimento di SQL, Infrastruttura e Power BI. 31 marzo - 2 aprile. Usare il codice FABINSIDER per salvare $400.
Iscriviti oggi stessoQuesto browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare i vantaggi di funzionalità più recenti, aggiornamenti della sicurezza e supporto tecnico.
Modifica le proprietà di un account di accesso di SQL Server.
Transact-SQL convenzioni di sintassi
Nella riga seguente selezionare il nome del prodotto a cui si è interessati e vengono visualizzate solo le informazioni del prodotto.
* SQL Server *
Azure Synapse
di analisi
Analytics Platform
di sistema (PDW)
ALTER LOGIN login_name
{
<status_option>
| WITH <set_option> [ , ... ]
| <cryptographic_credential_option>
}
[;]
<status_option> ::=
ENABLE | DISABLE
<set_option> ::=
PASSWORD = 'password' | hashed_password HASHED
[
OLD_PASSWORD = 'oldpassword'
| <password_option> [ <password_option> ]
]
| DEFAULT_DATABASE = database
| DEFAULT_LANGUAGE = language
| NAME = login_name
| CHECK_POLICY = { ON | OFF }
| CHECK_EXPIRATION = { ON | OFF }
| CREDENTIAL = credential_name
| NO CREDENTIAL
<password_option> ::=
MUST_CHANGE | UNLOCK
<cryptographic_credentials_option> ::=
ADD CREDENTIAL credential_name
| DROP CREDENTIAL credential_name
Specifica il nome dell'account di accesso di SQL Server da modificare. Gli account di accesso al dominio devono essere racchiusi tra parentesi quadre nel formato [<domain>\<user>]
.
Abilita o disabilita questo account di accesso. La disabilitazione di un account di accesso non influisce sul comportamento degli account di accesso già connessi. Usare l'istruzione KILL
per terminare una connessione esistente. Gli account di accesso disabilitati mantengono le relative autorizzazioni e possono comunque essere rappresentati.
Si applica solo agli account di accesso di SQL Server. Specifica la password per l'account di accesso da modificare. Le password fanno distinzione tra maiuscole e minuscole.
Si applica solo alla parola chiave HASHED. Specifica il valore con hash della password per l'account di accesso che viene creato.
Importante
Quando un account di accesso (o un utente di database indipendente) si connette e viene autenticato, la connessione memorizza nella cache le informazioni sull'identità relative all'account di accesso. Per un account di accesso con autenticazione di Windows, sono incluse informazioni sull'appartenenza ai gruppi di Windows. L'identità dell'account di accesso rimane autenticata finché la connessione viene mantenuta. Per forzare le modifiche apportate all'identità, ad esempio la reimpostazione della password o la modifica dell'appartenenza al gruppo di Windows, l'account di accesso deve disconnettersi dall'autorità di autenticazione (Windows o SQL Server) e accedere di nuovo. Un membro del sysadmin ruolo predefinito del server o qualsiasi account di accesso con l'autorizzazione ALTER ANY CONNECTION
può usare il comando KILL
per terminare una connessione e forzare la riconnessione di un account di accesso. SQL Server Management Studio può riutilizzare le informazioni di connessione quando si aprono più connessioni alle finestre Esplora oggetti e Editor di query. Chiudere tutte le connessioni per forzare la riconnessione.
Si applica solo agli account di accesso di SQL Server. Specifica che la password immessa dopo che l'argomento PASSWORD è già sottoposto a hashing. Se questa opzione non è selezionata, la password viene sottoposta a hashing prima di essere archiviata nel database. Questa opzione deve essere usata solo per la sincronizzazione dell'accesso tra due server. Non usare l'opzione HASHED per modificare regolarmente le password.
Si applica solo agli account di accesso di SQL Server. Password corrente dell'account di accesso a cui verrà assegnata una nuova password. Le password fanno distinzione tra maiuscole e minuscole.
Si applica solo agli account di accesso di SQL Server. Se questa opzione è inclusa, SQL Server richiede una password aggiornata la prima volta che viene usato l'account di accesso modificato.
Specifica un database predefinito da assegnare all'account di accesso.
Specifica una lingua predefinita da assegnare all'account di accesso. La lingua predefinita per tutti gli account di accesso al database SQL è inglese e non può essere modificata. La lingua predefinita dell'account di accesso sa
in SQL Server in Linux è l'inglese, ma può essere modificata.
Nuovo nome dell'account di accesso da rinominare. Se si tratta di un account di accesso di Windows, il SID dell'entità di Windows corrispondente al nuovo nome deve corrispondere al SID associato all'account di accesso in SQL Server. Il nuovo nome di un account di accesso di SQL Server non può contenere un carattere barra rovesciata (\
).
Si applica solo agli account di accesso di SQL Server. Specifica se i criteri di scadenza della password devono essere applicati all'account di accesso. Il valore predefinito è OFF.
Si applica solo agli account di accesso di SQL Server. Specifica che i criteri password di Windows del computer in cui è in esecuzione SQL Server devono essere applicati a questo account di accesso. Il valore predefinito è ON.
Nome di una credenziale di cui eseguire il mapping a un account di accesso di SQL Server. Le credenziali devono già esistere nel server. Per altre informazioni, vedere Credentials. Non è possibile eseguire il mapping di credenziali all'account di accesso sa.
Rimuove qualsiasi mapping esistente dell'account di accesso a una credenziale del server. Per altre informazioni, vedere Credentials.
Si applica solo agli account di accesso di SQL Server. Specifica che un account di accesso bloccato deve essere sbloccato.
Aggiunge una credenziale del provider EKM (Extensible Key Management) all'account di accesso. Per altre informazioni, vedere EKM (Extensible Key Management).
Rimuove una credenziale del provider EKM (Extensible Key Management) dall'account di accesso. Per altre informazioni, vedere [Extensible Key Management (EKM)] (.. /.. /relational-databases/security/encryption/extensible-key-management-ekm.md).
Quando CHECK_POLICY è impostato su ON, non è possibile usare l'argomento HASHED.
Quando CHECK_POLICY viene modificato in ON, si verifica il comportamento seguente:
Quando CHECK_POLICY viene impostato su OFF, si verifica il comportamento seguente:
Se si specifica MUST_CHANGE, CHECK_EXPIRATION e CHECK_POLICY devono essere impostati su ON. In caso contrario, l'istruzione ha esito negativo.
Se CHECK_POLICY è impostato su OFF, CHECK_EXPIRATION non può essere impostato su ON. Un'istruzione ALTER LOGIN con questa combinazione di opzioni ha esito negativo.
Non è possibile usare ALTER LOGIN con l'argomento DISABLE per negare l'accesso a un gruppo di Windows. Ad esempio, ALTER LOGIN [<domain>\<group>] DISABLE
restituisce il messaggio di errore seguente:
"Msg 15151, Level 16, State 1, Line 1
Cannot alter the login '*Domain\Group*', because it doesn't exist or you don't have permission.
Questo è per impostazione predefinita.
Nel database SQL i dati di accesso necessari per autenticare una connessione e le regole del firewall a livello di server vengono memorizzati temporaneamente nella cache in ogni database. Questa cache viene aggiornata periodicamente. Per forzare un aggiornamento della cache di autenticazione e assicurarsi che un database abbia la versione più recente della tabella degli account di accesso, eseguire DBCC FLUSHAUTHCACHE.
È richiesta l'autorizzazione ALTER ANY LOGIN.
Se viene usata l'opzione CREDENTIAL, è necessaria anche l'autorizzazione ALTER ANY CREDENTIAL.
Se l'account di accesso da modificare è membro del sysadmin ruolo predefinito del server o di un utente autorizzato dell'autorizzazione CONTROL SERVER, è necessaria anche l'autorizzazione CONTROL SERVER quando si apportano le modifiche seguenti:
Un'entità può modificare la password, la lingua predefinita e il database predefinito per il proprio account di accesso.
Nell'esempio seguente viene abilitato l'account di accesso Mary5
.
ALTER LOGIN Mary5 ENABLE;
Nell'esempio seguente viene modificata la password del Mary5
di accesso a una password complessa.
ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';
Se si sta tentando di modificare la password dell'account di accesso attualmente connesso e non si dispone dell'autorizzazione ALTER ANY LOGIN
è necessario specificare l'opzione OLD_PASSWORD
.
ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>' OLD_PASSWORD = '<oldWeakPasswordHere>';
Nell'esempio seguente il nome del Mary5
di accesso viene modificato in John2
.
ALTER LOGIN Mary5 WITH NAME = John2;
Nell'esempio seguente viene eseguito il mapping del John2
di accesso alla credenziale Custodian04
.
ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;
Nell'esempio seguente viene eseguito il mapping del Mary5
di accesso alla credenziale EKM EKMProvider1
.
ALTER LOGIN Mary5 ADD CREDENTIAL EKMProvider1;
GO
Per sbloccare un account di accesso di SQL Server, eseguire l'istruzione seguente, sostituendo ****
con la password dell'account desiderata.
ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK;
GO
Per sbloccare un account di accesso senza modificare la password, disattivare il criterio di controllo e quindi riattivarlo.
ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO
Nell'esempio seguente la password dell'account di accesso TestUser
viene modificata in un valore già con hash.
ALTER LOGIN TestUser WITH PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED;
GO
* Database SQL *
Azure Synapse
di analisi
Analytics Platform
di sistema (PDW)
ALTER LOGIN login_name
{
<status_option>
| WITH <set_option> [ , .. .n ]
}
[;]
<status_option> ::=
ENABLE | DISABLE
<set_option> ::=
PASSWORD = 'password'
[
OLD_PASSWORD = 'oldpassword'
]
| NAME = login_name
Specifica il nome dell'account di accesso di SQL Server da modificare. Gli account di accesso al dominio devono essere racchiusi tra parentesi quadre nel formato [dominio\utente].
Abilita o disabilita questo account di accesso. La disabilitazione di un account di accesso non influisce sul comportamento degli account di accesso già connessi. Usare l'istruzione KILL
per terminare una connessione esistente. Gli account di accesso disabilitati mantengono le relative autorizzazioni e possono comunque essere rappresentati.
Si applica solo agli account di accesso di SQL Server. Specifica la password per l'account di accesso da modificare. Le password fanno distinzione tra maiuscole e minuscole.
Le connessioni continuamente attive al database SQL richiedono la riautorizzazione (eseguita dal motore di database) almeno ogni 10 ore. Il motore di database tenta di riautorizzare usando la password originariamente inviata e non è necessario alcun input dell'utente. Per motivi di prestazioni, quando una password viene reimpostata nel database SQL, la connessione non viene riautenticata, anche se la connessione viene reimpostata a causa del pool di connessioni. Questo comportamento è diverso dal comportamento di SQL Server locale. Se la password è stata modificata dopo l'autorizzazione iniziale della connessione, la connessione deve essere terminata e una nuova connessione effettuata usando la nuova password. Un utente con l'autorizzazione KILL DATABASE CONNECTION può terminare in modo esplicito una connessione al database SQL usando il comando KILL. Per altre informazioni, vedere KILL.
Importante
Quando un account di accesso (o un utente di database indipendente) si connette e viene autenticato, la connessione memorizza nella cache le informazioni sull'identità relative all'account di accesso. Per un account di accesso con autenticazione di Windows, sono incluse informazioni sull'appartenenza ai gruppi di Windows. L'identità dell'account di accesso rimane autenticata finché la connessione viene mantenuta. Per forzare le modifiche apportate all'identità, ad esempio la reimpostazione della password o la modifica dell'appartenenza al gruppo di Windows, l'account di accesso deve disconnettersi dall'autorità di autenticazione (Windows o SQL Server) e accedere di nuovo. Un membro dell'
Si applica solo agli account di accesso di SQL Server. Password corrente dell'account di accesso a cui verrà assegnata una nuova password. Le password fanno distinzione tra maiuscole e minuscole.
Nuovo nome dell'account di accesso da rinominare. Se si tratta di un account di accesso di Windows, il SID dell'entità di Windows corrispondente al nuovo nome deve corrispondere al SID associato all'account di accesso in SQL Server. Il nuovo nome di un account di accesso di SQL Server non può contenere un carattere barra rovesciata (\).
Nel database SQL i dati di accesso necessari per autenticare una connessione e le regole del firewall a livello di server vengono memorizzati temporaneamente nella cache in ogni database. Questa cache viene aggiornata periodicamente. Per forzare un aggiornamento della cache di autenticazione e assicurarsi che un database abbia la versione più recente della tabella degli account di accesso, eseguire DBCC FLUSHAUTHCACHE.
È richiesta l'autorizzazione ALTER ANY LOGIN.
Se l'account di accesso da modificare è membro del sysadmin ruolo predefinito del server o di un utente autorizzato dell'autorizzazione CONTROL SERVER, è necessaria anche l'autorizzazione CONTROL SERVER quando si apportano le modifiche seguenti:
Un'entità può modificare la password per il proprio account di accesso.
Questi esempi includono anche esempi per l'uso di altri prodotti SQL. Vedere quali argomenti precedenti sono supportati.
Nell'esempio seguente viene abilitato l'account di accesso Mary5
.
ALTER LOGIN Mary5 ENABLE;
Nell'esempio seguente viene modificata la password del Mary5
di accesso a una password complessa.
ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';
Nell'esempio seguente il nome del Mary5
di accesso viene modificato in John2
.
ALTER LOGIN Mary5 WITH NAME = John2;
Nell'esempio seguente viene eseguito il mapping del John2
di accesso alla credenziale Custodian04
.
ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;
Nell'esempio seguente viene eseguito il mapping del Mary5
di accesso alla credenziale EKM EKMProvider1
.
si applica a: SQL Server 2008 (10.0.x) e versioni successive.
ALTER LOGIN Mary5 ADD CREDENTIAL EKMProvider1;
GO
Nell'esempio seguente la password dell'account di accesso TestUser
viene modificata in un valore già con hash.
si applica a: SQL Server 2008 (10.0.x) e versioni successive.
ALTER LOGIN TestUser WITH PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED;
GO
* Istanza gestita di SQL *
Azure Synapse
di analisi
Analytics Platform
di sistema (PDW)
ALTER LOGIN login_name
{
<status_option>
| WITH <set_option> [ , ... ]
| <cryptographic_credential_option>
}
[;]
<status_option> ::=
ENABLE | DISABLE
<set_option> ::=
PASSWORD = 'password' | hashed_password HASHED
[
OLD_PASSWORD = 'oldpassword'
| <password_option> [ <password_option> ]
]
| DEFAULT_DATABASE = database
| DEFAULT_LANGUAGE = language
| NAME = login_name
| CHECK_POLICY = { ON | OFF }
| CHECK_EXPIRATION = { ON | OFF }
| CREDENTIAL = credential_name
| NO CREDENTIAL
<password_option> ::=
MUST_CHANGE | UNLOCK
<cryptographic_credentials_option> ::=
ADD CREDENTIAL credential_name
| DROP CREDENTIAL credential_name
-- Syntax for Azure SQL Managed Instance using Microsoft Entra logins
ALTER LOGIN login_name
{
<status_option>
| WITH <set_option> [ , .. .n ]
}
[;]
<status_option> ::=
ENABLE | DISABLE
<set_option> ::=
DEFAULT_DATABASE = database
| DEFAULT_LANGUAGE = language
Specifica il nome dell'account di accesso di SQL Server da modificare. Gli account di accesso di Microsoft Entra devono essere specificati come user@domain. Ad esempio, john.smith@contoso.como come nome del gruppo o dell'applicazione Microsoft Entra. Per gli account di accesso di Microsoft Entra, il login_name deve corrispondere a un account di accesso Microsoft Entra esistente creato nel database master
.
Abilita o disabilita questo account di accesso. La disabilitazione di un account di accesso non influisce sul comportamento degli account di accesso già connessi. Usare l'istruzione KILL
per terminare una connessione esistente. Gli account di accesso disabilitati mantengono le relative autorizzazioni e possono comunque essere rappresentati.
Specifica un database predefinito da assegnare all'account di accesso.
Specifica una lingua predefinita da assegnare all'account di accesso. La lingua predefinita per tutti gli account di accesso al database SQL è inglese e non può essere modificata. La lingua predefinita dell'account di accesso sa
in SQL Server in Linux è l'inglese, ma può essere modificata.
Si applica solo agli account di accesso di SQL Server. Specifica la password per l'account di accesso da modificare. Le password fanno distinzione tra maiuscole e minuscole. Le password non si applicano anche quando vengono usate con account di accesso esterni, ad esempio gli account di accesso di Microsoft Entra.
Le connessioni continuamente attive al database SQL richiedono la riautorizzazione (eseguita dal motore di database) almeno ogni 10 ore. Il motore di database tenta di riautorizzare usando la password originariamente inviata e non è necessario alcun input dell'utente. Per motivi di prestazioni, quando una password viene reimpostata nel database SQL, la connessione non viene riautenticata, anche se la connessione viene reimpostata a causa del pool di connessioni. Questo comportamento è diverso dal comportamento di SQL Server locale. Se la password è stata modificata dopo l'autorizzazione iniziale della connessione, la connessione deve essere terminata e una nuova connessione effettuata usando la nuova password. Un utente con l'autorizzazione KILL DATABASE CONNECTION può terminare in modo esplicito una connessione al database SQL usando il comando KILL. Per altre informazioni, vedere KILL.
Si applica solo alla parola chiave HASHED. Specifica il valore con hash della password per l'account di accesso che viene creato.
Si applica solo agli account di accesso di SQL Server. Specifica che la password immessa dopo che l'argomento PASSWORD è già sottoposto a hashing. Se questa opzione non è selezionata, la password viene sottoposta a hashing prima di essere archiviata nel database. Questa opzione deve essere usata solo per la sincronizzazione dell'accesso tra due server. Non usare l'opzione HASHED per modificare regolarmente le password.
Si applica solo agli account di accesso di SQL Server. Password corrente dell'account di accesso a cui verrà assegnata una nuova password. Le password fanno distinzione tra maiuscole e minuscole.
Si applica solo agli account di accesso di SQL Server. Se questa opzione è inclusa, SQL Server richiede una password aggiornata la prima volta che viene usato l'account di accesso modificato.
Nuovo nome dell'account di accesso da rinominare. Se l'account di accesso è un account di accesso di Windows, il SID dell'entità di Windows corrispondente al nuovo nome deve corrispondere al SID associato all'account di accesso in SQL Server. Il nuovo nome di un account di accesso di SQL Server non può contenere un carattere barra rovesciata (\).
Si applica solo agli account di accesso di SQL Server. Specifica se i criteri di scadenza della password devono essere applicati all'account di accesso. Il valore predefinito è OFF.
Si applica solo agli account di accesso di SQL Server. Specifica che i criteri password di Windows del computer in cui è in esecuzione SQL Server devono essere applicati a questo account di accesso. Il valore predefinito è ON.
Nome di una credenziale di cui eseguire il mapping a un account di accesso di SQL Server. Le credenziali devono già esistere nel server. Per altre informazioni, vedere Credentials. Non è possibile eseguire il mapping di credenziali all'account di accesso sa.
Rimuove qualsiasi mapping esistente dell'account di accesso a una credenziale del server. Per altre informazioni, vedere Credentials.
Si applica solo agli account di accesso di SQL Server. Specifica che un account di accesso bloccato deve essere sbloccato.
Aggiunge una credenziale del provider EKM (Extensible Key Management) all'account di accesso. Per altre informazioni, vedere EKM (Extensible Key Management).
Rimuove una credenziale del provider EKM (Extensible Key Management) dall'account di accesso. Per altre informazioni, vedere EKM (Extensible Key Management).
Quando CHECK_POLICY è impostato su ON, non è possibile usare l'argomento HASHED.
Quando CHECK_POLICY viene modificato in ON, si verifica il comportamento seguente:
Quando CHECK_POLICY viene impostato su OFF, si verifica il comportamento seguente:
Se si specifica MUST_CHANGE, CHECK_EXPIRATION e CHECK_POLICY devono essere impostati su ON. In caso contrario, l'istruzione ha esito negativo.
Se CHECK_POLICY è impostato su OFF, CHECK_EXPIRATION non può essere impostato su ON. Un'istruzione ALTER LOGIN con questa combinazione di opzioni ha esito negativo.
Non è possibile usare ALTER_LOGIN con l'argomento DISABLE per negare l'accesso a un gruppo di Windows. Questo è per impostazione predefinita. Ad esempio, ALTER_LOGIN [domain\group] DISABLE restituisce il messaggio di errore seguente:
"Msg 15151, Level 16, State 1, Line 1 "Cannot alter the login '*Domain\Group*', because it doesn't exist or you don't have permission."
Nel database SQL i dati di accesso necessari per autenticare una connessione e le regole del firewall a livello di server vengono memorizzati temporaneamente nella cache in ogni database. Questa cache viene aggiornata periodicamente. Per forzare un aggiornamento della cache di autenticazione e assicurarsi che un database abbia la versione più recente della tabella degli account di accesso, eseguire DBCC FLUSHAUTHCACHE.
È richiesta l'autorizzazione ALTER ANY LOGIN.
Se viene usata l'opzione CREDENTIAL, è necessaria anche l'autorizzazione ALTER ANY CREDENTIAL.
Se l'account di accesso da modificare è membro del sysadmin ruolo predefinito del server o di un utente autorizzato dell'autorizzazione CONTROL SERVER, è necessaria anche l'autorizzazione CONTROL SERVER quando si apportano le modifiche seguenti:
Un'entità può modificare la password, la lingua predefinita e il database predefinito per il proprio account di accesso.
Solo un'entità SQL con privilegi sysadmin
può eseguire un comando ALTER LOGIN su un account di accesso di Microsoft Entra.
Questi esempi includono anche esempi per l'uso di altri prodotti SQL. Vedere quali argomenti precedenti sono supportati.
Nell'esempio seguente viene abilitato l'account di accesso Mary5
.
ALTER LOGIN Mary5 ENABLE;
Nell'esempio seguente viene modificata la password del Mary5
di accesso a una password complessa.
ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';
Nell'esempio seguente il nome del Mary5
di accesso viene modificato in John2
.
ALTER LOGIN Mary5 WITH NAME = John2;
Nell'esempio seguente viene eseguito il mapping del John2
di accesso alla credenziale Custodian04
.
ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;
Nell'esempio seguente viene eseguito il mapping del Mary5
di accesso alla credenziale EKM EKMProvider1
.
si applica a: SQL Server 2008 (10.0.x) e versioni successive e Istanza gestita di SQL di Azure.
ALTER LOGIN Mary5 ADD CREDENTIAL EKMProvider1;
GO
Per sbloccare un account di accesso di SQL Server, eseguire l'istruzione seguente, sostituendo ****
con la password dell'account desiderata.
ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK;
GO
Per sbloccare un account di accesso senza modificare la password, disattivare il criterio di controllo e quindi riattivarlo.
ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO
Nell'esempio seguente la password dell'account di accesso TestUser
viene modificata in un valore già con hash.
si applica a: SQL Server 2008 (10.0.x) e versioni successive e Istanza gestita di SQL di Azure.
ALTER LOGIN TestUser WITH PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED;
GO
Nell'esempio seguente viene disabilitato l'accesso di un utente di Microsoft Entra joe@contoso.com.
ALTER LOGIN [joe@contoso.com] DISABLE;
* Azure Synapse
Analisi *
Analytics Platform
di sistema (PDW)
ALTER LOGIN login_name
{
<status_option>
| WITH <set_option> [ , .. .n ]
}
[;]
<status_option> ::=
ENABLE | DISABLE
<set_option> ::=
PASSWORD = 'password'
[
OLD_PASSWORD = 'oldpassword'
]
| NAME = login_name
Specifica il nome dell'account di accesso di SQL Server da modificare. Gli account di accesso al dominio devono essere racchiusi tra parentesi quadre nel formato [dominio\utente].
Abilita o disabilita questo account di accesso. La disabilitazione di un account di accesso non influisce sul comportamento degli account di accesso già connessi. Usare l'istruzione KILL
per terminare una connessione esistente. Gli account di accesso disabilitati mantengono le relative autorizzazioni e possono comunque essere rappresentati.
Si applica solo agli account di accesso di SQL Server. Specifica la password per l'account di accesso da modificare. Le password fanno distinzione tra maiuscole e minuscole.
Le connessioni continuamente attive al database SQL richiedono la riautorizzazione (eseguita dal motore di database) almeno ogni 10 ore. Il motore di database tenta di riautorizzare usando la password originariamente inviata e non è necessario alcun input dell'utente. Per motivi di prestazioni, quando una password viene reimpostata nel database SQL, la connessione non viene riautenticata, anche se la connessione viene reimpostata a causa del pool di connessioni. Questo comportamento è diverso dal comportamento di SQL Server locale. Se la password è stata modificata dopo l'autorizzazione iniziale della connessione, la connessione deve essere terminata e una nuova connessione effettuata usando la nuova password. Un utente con l'autorizzazione KILL DATABASE CONNECTION può terminare in modo esplicito una connessione al database SQL usando il comando KILL. Per altre informazioni, vedere KILL.
Importante
Quando un account di accesso (o un utente di database indipendente) si connette e viene autenticato, la connessione memorizza nella cache le informazioni sull'identità relative all'account di accesso. Per un account di accesso con autenticazione di Windows, sono incluse informazioni sull'appartenenza ai gruppi di Windows. L'identità dell'account di accesso rimane autenticata finché la connessione viene mantenuta. Per forzare le modifiche apportate all'identità, ad esempio la reimpostazione della password o la modifica dell'appartenenza al gruppo di Windows, l'account di accesso deve disconnettersi dall'autorità di autenticazione (Windows o SQL Server) e accedere di nuovo. Un membro dell'
Si applica solo agli account di accesso di SQL Server. Password corrente dell'account di accesso a cui verrà assegnata una nuova password. Le password fanno distinzione tra maiuscole e minuscole.
Nuovo nome dell'account di accesso da rinominare. Se si tratta di un account di accesso di Windows, il SID dell'entità di Windows corrispondente al nuovo nome deve corrispondere al SID associato all'account di accesso in SQL Server. Il nuovo nome di un account di accesso di SQL Server non può contenere un carattere barra rovesciata (\).
Nel database SQL i dati di accesso necessari per autenticare una connessione e le regole del firewall a livello di server vengono memorizzati temporaneamente nella cache in ogni database. Questa cache viene aggiornata periodicamente. Per forzare un aggiornamento della cache di autenticazione e assicurarsi che un database abbia la versione più recente della tabella degli account di accesso, eseguire DBCC FLUSHAUTHCACHE.
È richiesta l'autorizzazione ALTER ANY LOGIN.
Se l'account di accesso da modificare è membro del sysadmin ruolo predefinito del server o di un utente autorizzato dell'autorizzazione CONTROL SERVER, è necessaria anche l'autorizzazione CONTROL SERVER quando si apportano le modifiche seguenti:
Un'entità può modificare la password per il proprio account di accesso.
Questi esempi includono anche esempi per l'uso di altri prodotti SQL. Vedere quali argomenti precedenti sono supportati.
Nell'esempio seguente viene abilitato l'account di accesso Mary5
.
ALTER LOGIN Mary5 ENABLE;
Nell'esempio seguente viene modificata la password del Mary5
di accesso a una password complessa.
ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';
Nell'esempio seguente il nome del Mary5
di accesso viene modificato in John2
.
ALTER LOGIN Mary5 WITH NAME = John2;
Nell'esempio seguente viene eseguito il mapping del John2
di accesso alla credenziale Custodian04
.
ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;
Nell'esempio seguente viene eseguito il mapping del Mary5
di accesso alla credenziale EKM EKMProvider1
.
si applica a: SQL Server 2008 (10.0.x) e versioni successive.
ALTER LOGIN Mary5 ADD CREDENTIAL EKMProvider1;
GO
Per sbloccare un account di accesso di SQL Server, eseguire l'istruzione seguente, sostituendo ****
con la password dell'account desiderata.
ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK;
GO
Nell'esempio seguente la password dell'account di accesso TestUser
viene modificata in un valore già con hash.
si applica a: SQL Server 2008 (10.0.x) e versioni successive.
ALTER LOGIN TestUser WITH PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED;
GO
Azure Synapse
di analisi
* Analytics
Platform System (PDW) *
ALTER LOGIN login_name
{
<status_option>
| WITH <set_option> [ , ... ]
}
<status_option> ::= ENABLE | DISABLE
<set_option> ::=
PASSWORD = 'password'
[
OLD_PASSWORD = 'oldpassword'
| <password_option> [ <password_option> ]
]
| NAME = login_name
| CHECK_POLICY = { ON | OFF }
| CHECK_EXPIRATION = { ON | OFF }
<password_option> ::=
MUST_CHANGE | UNLOCK
Specifica il nome dell'account di accesso di SQL Server da modificare. Gli account di accesso al dominio devono essere racchiusi tra parentesi quadre nel formato [dominio\utente].
Abilita o disabilita questo account di accesso. La disabilitazione di un account di accesso non influisce sul comportamento degli account di accesso già connessi. Usare l'istruzione KILL
per terminare una connessione esistente. Gli account di accesso disabilitati mantengono le relative autorizzazioni e possono comunque essere rappresentati.
Si applica solo agli account di accesso di SQL Server. Specifica la password per l'account di accesso da modificare. Le password fanno distinzione tra maiuscole e minuscole.
Importante
Quando un account di accesso (o un utente di database indipendente) si connette e viene autenticato, la connessione memorizza nella cache le informazioni sull'identità relative all'account di accesso. Per un account di accesso con autenticazione di Windows, sono incluse informazioni sull'appartenenza ai gruppi di Windows. L'identità dell'account di accesso rimane autenticata finché la connessione viene mantenuta. Per forzare le modifiche apportate all'identità, ad esempio la reimpostazione della password o la modifica dell'appartenenza al gruppo di Windows, l'account di accesso deve disconnettersi dall'autorità di autenticazione (Windows o SQL Server) e accedere di nuovo. Un membro dell'
Si applica solo agli account di accesso di SQL Server. Password corrente dell'account di accesso a cui verrà assegnata una nuova password. Le password fanno distinzione tra maiuscole e minuscole.
Si applica solo agli account di accesso di SQL Server. Se questa opzione è inclusa, SQL Server richiede una password aggiornata la prima volta che viene usato l'account di accesso modificato.
Nuovo nome dell'account di accesso da rinominare. Se l'account di accesso è un account di accesso di Windows, il SID dell'entità di Windows corrispondente al nuovo nome deve corrispondere al SID associato all'account di accesso in SQL Server. Il nuovo nome di un account di accesso di SQL Server non può contenere un carattere barra rovesciata (\).
Si applica solo agli account di accesso di SQL Server. Specifica se i criteri di scadenza della password devono essere applicati all'account di accesso. Il valore predefinito è OFF.
Si applica solo agli account di accesso di SQL Server. Specifica che i criteri password di Windows del computer in cui è in esecuzione SQL Server devono essere applicati a questo account di accesso. Il valore predefinito è ON.
Si applica solo agli account di accesso di SQL Server. Specifica che un account di accesso bloccato deve essere sbloccato.
Quando CHECK_POLICY è impostato su ON, non è possibile usare l'argomento HASHED.
Quando CHECK_POLICY viene modificato in ON, si verifica il comportamento seguente:
Quando CHECK_POLICY viene impostato su OFF, si verifica il comportamento seguente:
Se si specifica MUST_CHANGE, CHECK_EXPIRATION e CHECK_POLICY devono essere impostati su ON. In caso contrario, l'istruzione ha esito negativo.
Se CHECK_POLICY è impostato su OFF, CHECK_EXPIRATION non può essere impostato su ON. Un'istruzione ALTER LOGIN con questa combinazione di opzioni ha esito negativo.
Non è possibile usare ALTER_LOGIN con l'argomento DISABLE per negare l'accesso a un gruppo di Windows. Questo è per impostazione predefinita. Ad esempio, ALTER_LOGIN [domain\group] DISABLE restituisce il messaggio di errore seguente:
"Msg 15151, Level 16, State 1, Line 1 "Cannot alter the login '*Domain\Group*', because it doesn't exist or you don't have permission."
Nel database SQL i dati di accesso necessari per autenticare una connessione e le regole del firewall a livello di server vengono memorizzati temporaneamente nella cache in ogni database. Questa cache viene aggiornata periodicamente. Per forzare un aggiornamento della cache di autenticazione e assicurarsi che un database abbia la versione più recente della tabella degli account di accesso, eseguire DBCC FLUSHAUTHCACHE.
È richiesta l'autorizzazione ALTER ANY LOGIN.
Se viene usata l'opzione CREDENTIAL, è necessaria anche l'autorizzazione ALTER ANY CREDENTIAL.
Se l'account di accesso da modificare è membro del sysadmin ruolo predefinito del server o di un utente autorizzato dell'autorizzazione CONTROL SERVER, è necessaria anche l'autorizzazione CONTROL SERVER quando si apportano le modifiche seguenti:
Un'entità può modificare la password, la lingua predefinita e il database predefinito per il proprio account di accesso.
Questi esempi includono anche esempi per l'uso di altri prodotti SQL. Vedere quali argomenti precedenti sono supportati.
Nell'esempio seguente viene abilitato l'account di accesso Mary5
.
ALTER LOGIN Mary5 ENABLE;
Nell'esempio seguente viene modificata la password del Mary5
di accesso a una password complessa.
ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';
Nell'esempio seguente il nome del Mary5
di accesso viene modificato in John2
.
ALTER LOGIN Mary5 WITH NAME = John2;
Nell'esempio seguente viene eseguito il mapping del John2
di accesso alla credenziale Custodian04
.
ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;
Nell'esempio seguente viene eseguito il mapping del Mary5
di accesso alla credenziale EKM EKMProvider1
.
si applica a: SQL Server 2008 (10.0.x) e versioni successive.
ALTER LOGIN Mary5 ADD CREDENTIAL EKMProvider1;
GO
Per sbloccare un account di accesso di SQL Server, eseguire l'istruzione seguente, sostituendo ****
con la password dell'account desiderata.
ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK;
GO
Per sbloccare un account di accesso senza modificare la password, disattivare il criterio di controllo e quindi riattivarlo.
ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO
Nell'esempio seguente la password dell'account di accesso TestUser
viene modificata in un valore già con hash.
si applica a: SQL Server 2008 (10.0.x) e versioni successive.
ALTER LOGIN TestUser WITH PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED;
GO
Eventi
31 mar, 23 - 2 apr, 23
Il più grande evento di apprendimento di SQL, Infrastruttura e Power BI. 31 marzo - 2 aprile. Usare il codice FABINSIDER per salvare $400.
Iscriviti oggi stesso