ALTER LOGIN (Transact-SQL)ALTER LOGIN (Transact-SQL)

Ändert die Eigenschaften eines SQL ServerSQL Server-Anmeldekontos.Changes the properties of a SQL ServerSQL Server login account.

Themenlinksymbol Transact-SQL-SyntaxkonventionenTopic link icon Transact-SQL Syntax Conventions

Wählen Sie ein Produkt.Click a product!

Klicken Sie in der folgenden Zeile auf den Namen des Produkts, das Sie am meisten interessiert.In the following row, click whichever product name you are interested in. Mit nur einem Klick erhalten Sie auf dieser Webseite unterschiedliche Inhalte, die zu dem Produkt passen, das Sie ausgewählt haben.The click displays different content here on this webpage, appropriate for whichever product you click.

* SQL Server *  * SQL Server *   SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
SQL Data
Warehouse
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

SQL ServerSQL Server

SyntaxSyntax

-- Syntax for SQL Server

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

ArgumenteArguments

login_name Gibt den Namen der SQL ServerSQL Server-Anmeldung an, die geändert wird.login_name Specifies the name of the SQL ServerSQL Server login that is being changed. Domänenanmeldungen müssen in Klammern eingeschlossen werden: [Domäne\Benutzer].Domain logins must be enclosed in brackets in the format [domain\user].

ENABLE | DISABLE Aktiviert oder deaktiviert diese Anmeldung.ENABLE | DISABLE Enables or disables this login. Das Deaktivieren einer Anmeldung wirkt sich nicht auf das Verhalten der bereits verbundenen Anmeldungen aus.Disabling a login does not affect the behavior of logins that are already connected. (Verwenden Sie die KILL-Anweisung, um eine vorhandene Verbindung zu beenden.) Deaktivierte Anmeldungen behalten ihre Berechtigungen bei und sind weiterhin für den Identitätswechsel verfügbar.(Use the KILL statement to terminate an existing connections.) Disabled logins retain their permissions and can still be impersonated.

PASSWORD =' password ' Gilt nur für SQL ServerSQL Server-Anmeldungen.PASSWORD ='password' Applies only to SQL ServerSQL Server logins. Gibt das Kennwort für die Anmeldung an, die geändert wird.Specifies the password for the login that is being changed. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

PASSWORD = hashed_password Gilt nur für das HASHED-Schlüsselwort.PASSWORD =hashed_password Applies to the HASHED keyword only. Gibt den Hashwert des Kennworts für den Anmeldenamen an, der erstellt wird.Specifies the hashed value of the password for the login that is being created.

Wichtig

Wenn für eine Anmeldung (oder den Benutzer einer eigenständigen Datenbank) eine Verbindung hergestellt und diese authentifiziert wird, werden von der Verbindung Identitätsinformationen zur Anmeldung zwischengespeichert.When a login (or a contained database user) connects and is authenticated, the connection caches identity information about the login. Bei einer Anmeldung unter Verwendung der Windows-Authentifizierung umfassen die Informationen Angaben zur Mitgliedschaft in Windows-Gruppen.For a Windows Authentication login, this includes information about membership in Windows groups. Die Identität der Anmeldung bleibt für die Dauer der Verbindung authentifiziert.The identity of the login remains authenticated as long as the connection is maintained. Um Identitätsänderungen zu erzwingen, z. B. das Zurücksetzen eines Kennworts oder eine Änderung der Windows-Gruppenmitgliedschaft, muss die Anmeldung von der Authentifizierungsstelle (Windows oder SQL ServerSQL Server) abgemeldet und erneut angemeldet werden.To force changes in the identity, such as a password reset or change in Windows group membership, the login must logoff from the authentication authority (Windows or SQL ServerSQL Server), and log in again. Ein Mitglied der festen Serverrolle sysadmin oder eine beliebige Anmeldung mit der ALTER ANY CONNECTION -Berechtigung kann den KILL -Befehl verwenden, um eine Verbindung zu beenden und zu erzwingen, dass für eine Anmeldung eine erneute Verbindung hergestellt wird.A member of the sysadmin fixed server role or any login with the ALTER ANY CONNECTION permission can use the KILL command to end a connection and force a login to reconnect. SQL Server Management StudioSQL Server Management Studio ist in der Lage, Verbindungsinformationen wiederzuverwenden, wenn mehrere Verbindungen mit dem Fenster Objekt-Explorer und Abfrage-Editor hergestellt werden.can reuse connection information when opening multiple connections to Object Explorer and Query Editor windows. Schließen Sie alle Verbindungen, um eine erneute Verbindung zu erzwingen.Close all connections to force reconnection.

HASHED Gilt nur für SQL ServerSQL Server-Anmeldenamen.HASHED Applies to SQL ServerSQL Server logins only. Gibt an, dass das nach dem PASSWORD-Argument eingegebene Kennwort bereits einen Hashwert darstellt.Specifies that the password entered after the PASSWORD argument is already hashed. Wenn diese Option nicht ausgewählt wird, wird aus dem Kennwort vor dem Speichern in der Datenbank ein Hashwert erstellt.If this option is not selected, the password is hashed before being stored in the database. Diese Option sollte nur für die Anmeldungssynchronisierung zwischen zwei Servern verwendet werden.This option should only be used for login synchronization between two servers. Verwenden Sie die HASHED-Option nicht, um Kennwörter routinemäßig zu ändern.Do not use the HASHED option to routinely change passwords.

OLD_PASSWORD =' oldpassword ' Gilt nur für SQL ServerSQL Server-Anmeldungen.OLD_PASSWORD ='oldpassword' Applies only to SQL ServerSQL Server logins. Das aktuelle Kennwort der Anmeldung, der ein neues Kennwort zugewiesen wird.The current password of the login to which a new password will be assigned. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

MUST_CHANGE Gilt nur für SQL ServerSQL Server-Anmeldungen.MUST_CHANGE Applies only to SQL ServerSQL Server logins. Falls diese Option angegeben wird, fordert SQL ServerSQL Server zur Eingabe eines aktualisierten Kennworts auf, wenn die geänderte Anmeldung zum ersten Mal verwendet wird.If this option is included, SQL ServerSQL Server will prompt for an updated password the first time the altered login is used.

DEFAULT_DATABASE = database Gibt eine Standarddatenbank an, die der Anmeldung zugewiesen werden soll.DEFAULT_DATABASE =database Specifies a default database to be assigned to the login.

DEFAULT_LANGUAGE = language Gibt eine Standardsprache an, die der Anmeldung zugewiesen werden soll.DEFAULT_LANGUAGE =language Specifies a default language to be assigned to the login. Die Standardsprache für alle SQL-Datenbank-Anmeldungen ist Englisch und kann nicht geändert werden.The default language for all SQL Database logins is English and cannot be changed. Die Standardsprache der sa-Anmeldung bei SQL ServerSQL Server unter Linux ist Englisch. Diese kann jedoch geändert werden.The default language of the sa login on SQL ServerSQL Server on Linux, is English but it can be changed.

NAME = login_name Der neue Name der Anmeldung, die umbenannt wird.NAME = login_name The new name of the login that is being renamed. Falls es sich dabei um eine Windows-Anmeldung handelt, muss die SID des entsprechenden Windows-Prinzipals für den neuen Namen mit der SID übereinstimmen, die der Anmeldung in SQL ServerSQL Server zugeordnet ist.If this is a Windows login, the SID of the Windows principal corresponding to the new name must match the SID associated with the login in SQL ServerSQL Server. Der neue Name einer SQL ServerSQL Server-Anmeldung darf keinen umgekehrten Schrägstrich (\) enthalten.The new name of a SQL ServerSQL Server login cannot contain a backslash character (\).

CHECK_EXPIRATION = { ON | OFF } Gilt nur für SQL ServerSQL Server-Anmeldungen.CHECK_EXPIRATION = { ON | OFF } Applies only to SQL ServerSQL Server logins. Gibt an, ob die Richtlinie für das Ablaufen von Kennwörtern für diesen Anmeldenamen erzwungen werden soll.Specifies whether password expiration policy should be enforced on this login. Der Standardwert ist OFF.The default value is OFF.

CHECK_POLICY = { ON | OFF } Gilt nur für SQL ServerSQL Server-Anmeldungen.CHECK_POLICY = { ON | OFF } Applies only to SQL ServerSQL Server logins. Gibt an, dass die Windows-Kennwortrichtlinien des Computers, auf dem SQL ServerSQL Server ausgeführt wird, für diesen Anmeldenamen erzwungen werden sollen.Specifies that the Windows password policies of the computer on which SQL ServerSQL Server is running should be enforced on this login. Der Standardwert ist ON.The default value is ON.

CREDENTIAL = credential_name Die Anmeldeinformationen, die einer SQL ServerSQL Server-Anmeldung zugeordnet werden sollen.CREDENTIAL = credential_name The name of a credential to be mapped to a SQL ServerSQL Server login. Die Anmeldeinformationen müssen bereits auf dem Server vorhanden sein.The credential must already exist in the server. Weitere Informationen finden Sie unter Anmeldeinformationen.For more information, see Credentials. Der sa-Anmeldung können keine Anmeldeinformationen zugeordnet werden.A credential cannot be mapped to the sa login.

NO CREDENTIAL Entfernt vorhandene Zuordnungen der Anmeldung zu Serveranmeldeinformationen.NO CREDENTIAL Removes any existing mapping of the login to a server credential. Weitere Informationen finden Sie unter Anmeldeinformationen.For more information, see Credentials.

UNLOCK Gilt nur für SQL ServerSQL Server-Anmeldungen.UNLOCK Applies only to SQL ServerSQL Server logins. Gibt an, dass die Sperre einer Anmeldung aufgehoben wird.Specifies that a login that is locked out should be unlocked.

ADD CREDENTIAL Fügt der Anmeldung Anmeldeinformationen eines EKM-Anbieters (Extensible Key Management, erweiterbare Schlüsselverwaltung) hinzu.ADD CREDENTIAL Adds an Extensible Key Management (EKM) provider credential to the login. Weitere Informationen finden Sie unter Erweiterbare Schlüsselverwaltung (Extensible Key Management, EKM).For more information, see Extensible Key Management (EKM).

DROP CREDENTIAL Entfernt Anmeldeinformationen eines EKM-Anbieters (Extensible Key Management, erweiterbare Schlüsselverwaltung) aus der Anmeldung.DROP CREDENTIAL Removes an Extensible Key Management (EKM) provider credential from the login. Weitere Informationen finden Sie unter [Erweiterbare Schlüsselverwaltung (Extensible Key Management, EKM)] (../..For more information, see [Extensible Key Management (EKM)] (../.. /relational-databases/security/encryption/extensible-key-management-ekm.md)./relational-databases/security/encryption/extensible-key-management-ekm.md).

BemerkungenRemarks

Wenn CHECK_POLICY auf ON festgelegt ist, kann das HASHED-Argument nicht verwendet werden.When CHECK_POLICY is set to ON, the HASHED argument cannot be used.

Wenn CHECK_POLICY in ON geändert wird, passiert Folgendes:When CHECK_POLICY is changed to ON, the following behavior occurs:

  • Der Kennwortverlauf wird mit dem Wert des aktuellen Kennworthashes initialisiert.The password history is initialized with the value of the current password hash.

    Wenn CHECK_POLICY in OFF geändert wird, passiert Folgendes:When CHECK_POLICY is changed to OFF, the following behavior occurs:

  • CHECK_EXPIRATION wird ebenfalls auf OFF festgelegt.CHECK_EXPIRATION is also set to OFF.

  • Der Kennwortverlauf wird gelöscht.The password history is cleared.

  • Der Wert von lockout_time wird zurückgesetzt.The value of lockout_time is reset.

Falls MUST_CHANGE angegeben wird, müssen CHECK_EXPIRATION und CHECK_POLICY auf ON festgelegt werden.If MUST_CHANGE is specified, CHECK_EXPIRATION and CHECK_POLICY must be set to ON. Andernfalls erzeugt die Anweisung einen Fehler.Otherwise, the statement will fail.

Falls CHECK_POLICY auf OFF festgelegt ist, kann CHECK_EXPIRATION nicht auf ON festgelegt werden.If CHECK_POLICY is set to OFF, CHECK_EXPIRATION cannot be set to ON. Eine ALTER LOGIN-Anweisung mit dieser Kombination von Optionen erzeugt einen Fehler.An ALTER LOGIN statement that has this combination of options will fail.

Sie können ALTER_LOGIN mit dem DISABLE-Argument nicht dazu verwenden, den Zugriff auf eine Windows-Gruppe zu verweigern.You cannot use ALTER_LOGIN with the DISABLE argument to deny access to a Windows group. ALTER_LOGIN [domain\group] DISABLE gibt zum Beispiel die folgende Fehlermeldung zurück:For example, ALTER_LOGIN [domain\group] DISABLE will return the following error message:

`"Msg 15151, Level 16, State 1, Line 1
"Cannot alter the login '*Domain\Group*', because it does not exist or you do not have permission."`

This is by design.

In SQL-DatenbankSQL Database werden Anmeldedaten, die für die Authentifizierung einer Verbindung und Firewallregeln auf Serverebene erforderlich sind, über einen gewissen Zeitraum in jeder Datenbank gespeichert.In SQL-DatenbankSQL Database, login data required to authenticate a connection and server-level firewall rules are temporarily cached in each database. Dieser Cache wird regelmäßig aktualisiert.This cache is periodically refreshed. Führen Sie DBCC FLUSHAUTHCACHE aus, um eine Aktualisierung des Authentifizierungscache zu erzwingen und sicherzustellen, dass eine Datenbank über die aktuelle Version der Tabelle mit Anmeldenamen verfügt.To force a refresh of the authentication cache and make sure that a database has the latest version of the logins table, execute DBCC FLUSHAUTHCACHE.

BerechtigungenPermissions

Erfordert die ALTER ANY LOGIN-Berechtigung.Requires ALTER ANY LOGIN permission.

Falls die CREDENTIAL-Option verwendet wird, ist auch die ALTER ANY CREDENTIAL-Berechtigung erforderlich.If the CREDENTIAL option is used, also requires ALTER ANY CREDENTIAL permission.

Wenn die zu ändernde Anmeldung Mitglied der festen Serverrolle sysadmin oder Empfänger der CONTROL SERVER-Berechtigung ist, ist auch die CONTROL SERVER-Berechtigung für die folgenden Änderungen erforderlich:If the login that is being changed is a member of the sysadmin fixed server role or a grantee of CONTROL SERVER permission, also requires CONTROL SERVER permission when making the following changes:

  • Zurücksetzen des Kennworts ohne Eingabe des alten Kennworts.Resetting the password without supplying the old password.
  • Aktivieren von MUST_CHANGE, CHECK_POLICY oder CHECK_EXPIRATION.Enabling MUST_CHANGE, CHECK_POLICY, or CHECK_EXPIRATION.
  • Ändern des Anmeldenamens.Changing the login name.
  • Aktivieren oder Deaktivieren der Anmeldung.Enabling or disabling the login.
  • Zuordnen der Anmeldung zu anderen Anmeldeinformationen.Mapping the login to a different credential.

Ein Prinzipal kann das Kennwort, die Standardsprache und die Standarddatenbank für seine eigene Anmeldung ändern.A principal can change the password, default language, and default database for its own login.

BeispieleExamples

A.A. Aktivieren einer deaktivierten AnmeldungEnabling a disabled login

Im folgenden Beispiel wird die Anmeldung Mary5 aktiviert.The following example enables the login Mary5.

ALTER LOGIN Mary5 ENABLE;

B.B. Ändern des Kennworts einer AnmeldungChanging the password of a login

Im folgenden Beispiel wird das Kennwort der Anmeldung Mary5 in ein sicheres Kennwort geändert.The following example changes the password of login Mary5 to a strong password.

ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';

C.C. Ändern des Kennworts einer Anmeldung, wenn Sie mit dieser angemeldet sindChanging the password of a login when logged in as the login

Wenn Sie versuchen, das Kennwort der Anmeldung zu ändern, mit der Sie derzeit angemeldet sind, und wenn Sie nicht die ALTER ANY LOGIN-Berechtigung haben, müssen Sie die Option OLD_PASSWORD angeben.If you are attempting to change the password of the login that you're currently logged in with and you do not have the ALTER ANY LOGIN permission you must specify the OLD_PASSWORD option.

ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>' OLD_PASSWORD = '<oldWeakPasswordHere>';

D.D. Ändern des Namens einer AnmeldungChanging the name of a login

Im folgenden Beispiel wird der Name der Anmeldung Mary5 in John2 geändert.The following example changes the name of login Mary5 to John2.

ALTER LOGIN Mary5 WITH NAME = John2;

E.E. Zuordnen einer Anmeldung zu AnmeldeinformationenMapping a login to a credential

Im folgenden Beispiel wird die Anmeldung John2 den Anmeldeinformationen Custodian04 zugeordnet.The following example maps the login John2 to the credential Custodian04.

ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;

F.F. Zuordnen einer Anmeldung zu Anmeldeinformationen der erweiterbaren SchlüsselverwaltungMapping a login to an Extensible Key Management credential

Im folgenden Beispiel wird die Anmeldung Mary5 den EKM-Anmeldeinformationen EKMProvider1 zugeordnet.The following example maps the login Mary5 to the EKM credential EKMProvider1.

ALTER LOGIN Mary5
ADD CREDENTIAL EKMProvider1;
GO

F.F. Entsperren einer AnmeldungUnlocking a login

Um eine SQL ServerSQL Server-Anmeldung zu entsperren, führen Sie die folgende Anweisung aus und ersetzen **** durch das gewünschte Kontokennwort.To unlock a SQL ServerSQL Server login, execute the following statement, replacing **** with the desired account password.

ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK ;

GO

Um eine Anmeldung zu entsperren, ohne das Kennwort zu ändern, deaktivieren Sie die Überprüfungsrichtlinie, und aktivieren Sie diese dann erneut.To unlock a login without changing the password, turn the check policy off and then on again.

ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO

G.G. Ändern des Kennworts für eine Anmeldung mit HASHEDChanging the password of a login using HASHED

Im folgenden Beispiel wird das Kennwort für die TestUser-Anmeldung in einen bereits vorhandenen Hashwert geändert.The following example changes the password of the TestUser login to an already hashed value.

ALTER LOGIN TestUser WITH
PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED ;
GO

Weitere InformationenSee Also

SQL ServerSQL Server * SQL-Datenbank
Singleton/Pool für elastische Datenbanken*
* SQL Database
single database/elastic pool *
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
SQL Data
Warehouse
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Azure SQL-Datenbank Singleton/Pool für elastische DatenbankenAzure SQL Database single database/elastic pool

SQL ServerSQL Server

SyntaxSyntax

-- Syntax for Azure SQL Database and Azure SQL Data Warehouse

ALTER LOGIN login_name
  {
      <status_option>
    | WITH <set_option> [ ,.. .n ]
  }
[;]

<status_option> ::=
    ENABLE | DISABLE

<set_option> ::=
    PASSWORD ='password'
    [
      OLD_PASSWORD ='oldpassword'
    ]
    | NAME = login_name

ArgumenteArguments

login_name Gibt den Namen der SQL ServerSQL Server-Anmeldung an, die geändert wird.login_name Specifies the name of the SQL ServerSQL Server login that is being changed. Domänenanmeldungen müssen in Klammern eingeschlossen werden: [Domäne\Benutzer].Domain logins must be enclosed in brackets in the format [domain\user].

ENABLE | DISABLE Aktiviert oder deaktiviert diese Anmeldung.ENABLE | DISABLE Enables or disables this login. Das Deaktivieren einer Anmeldung wirkt sich nicht auf das Verhalten der bereits verbundenen Anmeldungen aus.Disabling a login does not affect the behavior of logins that are already connected. (Verwenden Sie die KILL-Anweisung, um eine vorhandene Verbindung zu beenden.) Deaktivierte Anmeldungen behalten ihre Berechtigungen bei und sind weiterhin für den Identitätswechsel verfügbar.(Use the KILL statement to terminate an existing connections.) Disabled logins retain their permissions and can still be impersonated.

PASSWORD =' password ' Gilt nur für SQL ServerSQL Server-Anmeldungen.PASSWORD ='password' Applies only to SQL ServerSQL Server logins. Gibt das Kennwort für die Anmeldung an, die geändert wird.Specifies the password for the login that is being changed. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

Ständig aktive Verbindungen mit SQL-Datenbank erfordern alle 10 Stunden eine erneute Authentifizierung, die von der Datenbank-Engine durchgeführt.Continuously active connections to SQL Database require reauthorization (performed by the Database Engine) at least every 10 hours. Die Datenbank-Engine versucht, eine erneute Authentifizierung mit dem ursprünglich übermittelten Kennwort durchzuführen. Dabei ist keine Eingabe des Benutzers erforderlich.The Database Engine attempts reauthorization using the originally submitted password and no user input is required. Aus Leistungsgründen wird die Verbindung nicht erneut authentifiziert, wenn ein Kennwort in SQL-Datenbank zurückgesetzt wird. Dies ist auch nicht der Fall, wenn die Verbindung aufgrund von Verbindungspooling zurückgesetzt wird.For performance reasons, when a password is reset in SQL Database, the connection will not be re-authenticated, even if the connection is reset due to connection pooling. Dies unterscheidet sich von dem Verhalten von SQL Server (lokal).This is different from the behavior of on-premises SQL Server. Wenn das Kennwort nach der ersten Authentifizierung der Verbindung geändert wurde, muss diese Verbindung beendet und eine neue unter Verwendung des neuen Kennworts hergestellt werden.If the password has been changed since the connection was initially authorized, the connection must be terminated and a new connection made using the new password. Ein Benutzer mit der KILL DATABASE CONNECTION-Berechtigung kann eine Verbindung mit SQL-Datenbank mit dem Befehl KILL explizit beenden.A user with the KILL DATABASE CONNECTION permission can explicitly terminate a connection to SQL Database by using the KILL command. Weitere Informationen finden Sie unter KILL.For more information, see KILL.

Wichtig

Wenn für eine Anmeldung (oder den Benutzer einer eigenständigen Datenbank) eine Verbindung hergestellt und diese authentifiziert wird, werden von der Verbindung Identitätsinformationen zur Anmeldung zwischengespeichert.When a login (or a contained database user) connects and is authenticated, the connection caches identity information about the login. Bei einer Anmeldung unter Verwendung der Windows-Authentifizierung umfassen die Informationen Angaben zur Mitgliedschaft in Windows-Gruppen.For a Windows Authentication login, this includes information about membership in Windows groups. Die Identität der Anmeldung bleibt für die Dauer der Verbindung authentifiziert.The identity of the login remains authenticated as long as the connection is maintained. Um Identitätsänderungen zu erzwingen, z. B. das Zurücksetzen eines Kennworts oder eine Änderung der Windows-Gruppenmitgliedschaft, muss die Anmeldung von der Authentifizierungsstelle (Windows oder SQL ServerSQL Server) abgemeldet und erneut angemeldet werden.To force changes in the identity, such as a password reset or change in Windows group membership, the login must logoff from the authentication authority (Windows or SQL ServerSQL Server), and log in again. Ein Mitglied der festen Serverrolle sysadmin oder eine beliebige Anmeldung mit der ALTER ANY CONNECTION -Berechtigung kann den KILL -Befehl verwenden, um eine Verbindung zu beenden und zu erzwingen, dass für eine Anmeldung eine erneute Verbindung hergestellt wird.A member of the sysadmin fixed server role or any login with the ALTER ANY CONNECTION permission can use the KILL command to end a connection and force a login to reconnect. SQL Server Management StudioSQL Server Management Studio ist in der Lage, Verbindungsinformationen wiederzuverwenden, wenn mehrere Verbindungen mit dem Fenster Objekt-Explorer und Abfrage-Editor hergestellt werden.can reuse connection information when opening multiple connections to Object Explorer and Query Editor windows. Schließen Sie alle Verbindungen, um eine erneute Verbindung zu erzwingen.Close all connections to force reconnection.

OLD_PASSWORD =' oldpassword ' Gilt nur für SQL ServerSQL Server-Anmeldungen.OLD_PASSWORD ='oldpassword' Applies only to SQL ServerSQL Server logins. Das aktuelle Kennwort der Anmeldung, der ein neues Kennwort zugewiesen wird.The current password of the login to which a new password will be assigned. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

NAME = login_name Der neue Name der Anmeldung, die umbenannt wird.NAME = login_name The new name of the login that is being renamed. Falls es sich dabei um eine Windows-Anmeldung handelt, muss die SID des entsprechenden Windows-Prinzipals für den neuen Namen mit der SID übereinstimmen, die der Anmeldung in SQL ServerSQL Server zugeordnet ist.If this is a Windows login, the SID of the Windows principal corresponding to the new name must match the SID associated with the login in SQL ServerSQL Server. Der neue Name einer SQL ServerSQL Server-Anmeldung darf keinen umgekehrten Schrägstrich (\) enthalten.The new name of a SQL ServerSQL Server login cannot contain a backslash character (\).

BemerkungenRemarks

In SQL-DatenbankSQL Database werden Anmeldedaten, die für die Authentifizierung einer Verbindung und Firewallregeln auf Serverebene erforderlich sind, über einen gewissen Zeitraum in jeder Datenbank gespeichert.In SQL-DatenbankSQL Database, login data required to authenticate a connection and server-level firewall rules are temporarily cached in each database. Dieser Cache wird regelmäßig aktualisiert.This cache is periodically refreshed. Führen Sie DBCC FLUSHAUTHCACHE aus, um eine Aktualisierung des Authentifizierungscache zu erzwingen und sicherzustellen, dass eine Datenbank über die aktuelle Version der Tabelle mit Anmeldenamen verfügt.To force a refresh of the authentication cache and make sure that a database has the latest version of the logins table, execute DBCC FLUSHAUTHCACHE.

BerechtigungenPermissions

Erfordert die ALTER ANY LOGIN-Berechtigung.Requires ALTER ANY LOGIN permission.

Wenn die zu ändernde Anmeldung Mitglied der festen Serverrolle sysadmin oder Empfänger der CONTROL SERVER-Berechtigung ist, ist auch die CONTROL SERVER-Berechtigung für die folgenden Änderungen erforderlich:If the login that is being changed is a member of the sysadmin fixed server role or a grantee of CONTROL SERVER permission, also requires CONTROL SERVER permission when making the following changes:

  • Zurücksetzen des Kennworts ohne Eingabe des alten Kennworts.Resetting the password without supplying the old password.
  • Ändern des Anmeldenamens.Changing the login name.
  • Aktivieren oder Deaktivieren der Anmeldung.Enabling or disabling the login.
  • Zuordnen der Anmeldung zu anderen Anmeldeinformationen.Mapping the login to a different credential.

Ein Prinzipal kann das Kennwort seiner eigenen Anmeldung ändern.A principal can change the password for its own login.

BeispieleExamples

Zu diesen Beispielen gehören auch Beispiele zur Verwendung anderer SQL-Produkte.These examples also include examples for using other SQL products. Oben sehen Sie, welche Argumente unterstützt werden.Please see which arguments are supported above.

A.A. Aktivieren einer deaktivierten AnmeldungEnabling a disabled login

Im folgenden Beispiel wird die Anmeldung Mary5 aktiviert.The following example enables the login Mary5.

ALTER LOGIN Mary5 ENABLE;

B.B. Ändern des Kennworts einer AnmeldungChanging the password of a login

Im folgenden Beispiel wird das Kennwort der Anmeldung Mary5 in ein sicheres Kennwort geändert.The following example changes the password of login Mary5 to a strong password.

ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';

C.C. Ändern des Namens einer AnmeldungChanging the name of a login

Im folgenden Beispiel wird der Name der Anmeldung Mary5 in John2 geändert.The following example changes the name of login Mary5 to John2.

ALTER LOGIN Mary5 WITH NAME = John2;

D.D. Zuordnen einer Anmeldung zu AnmeldeinformationenMapping a login to a credential

Im folgenden Beispiel wird die Anmeldung John2 den Anmeldeinformationen Custodian04 zugeordnet.The following example maps the login John2 to the credential Custodian04.

ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;

E.E. Zuordnen einer Anmeldung zu Anmeldeinformationen der erweiterbaren SchlüsselverwaltungMapping a login to an Extensible Key Management credential

Im folgenden Beispiel wird die Anmeldung Mary5 den EKM-Anmeldeinformationen EKMProvider1 zugeordnet.The following example maps the login Mary5 to the EKM credential EKMProvider1.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

ALTER LOGIN Mary5
ADD CREDENTIAL EKMProvider1;
GO

F.F. Entsperren einer AnmeldungUnlocking a login

Um eine SQL ServerSQL Server-Anmeldung zu entsperren, führen Sie die folgende Anweisung aus und ersetzen **** durch das gewünschte Kontokennwort.To unlock a SQL ServerSQL Server login, execute the following statement, replacing **** with the desired account password.

ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK ;

GO

Um eine Anmeldung zu entsperren, ohne das Kennwort zu ändern, deaktivieren Sie die Überprüfungsrichtlinie, und aktivieren Sie diese dann erneut.To unlock a login without changing the password, turn the check policy off and then on again.

ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO

G.G. Ändern des Kennworts für eine Anmeldung mit HASHEDChanging the password of a login using HASHED

Im folgenden Beispiel wird das Kennwort für die TestUser-Anmeldung in einen bereits vorhandenen Hashwert geändert.The following example changes the password of the TestUser login to an already hashed value.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

ALTER LOGIN TestUser WITH
PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED ;
GO

Weitere InformationenSee Also

SQL ServerSQL Server SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
* SQL-Datenbank
verwaltete Instanz *
* SQL Database
managed instance *
SQL Data
Warehouse
SQL Data
Warehouse
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Verwaltete Azure SQL-Datenbank-InstanzAzure SQL Database managed instance

SyntaxSyntax

-- Syntax for SQL Server and Azure SQL Database managed instance

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

Wichtig

Azure AD-Anmeldungen für verwaltete SQL-Datenbankinstanzen befinden sich in der Public Preview.Azure AD logins for SQL Database managed instance is in public preview.

-- Syntax for Azure SQL Database managed instance using Azure AD logins

ALTER LOGIN login_name
  {
      <status_option>
    | WITH <set_option> [ ,.. .n ]
  }
[;]

<status_option> ::=
    ENABLE | DISABLE

<set_option> ::=
     DEFAULT_DATABASE = database
   | DEFAULT_LANGUAGE = language

ArgumenteArguments

Argumente für SQL- und Azure AD-AnmeldeinformationenArguments applicable to SQL and Azure AD logins

login_name Gibt den Namen der SQL ServerSQL Server-Anmeldung an, die geändert wird.login_name Specifies the name of the SQL ServerSQL Server login that is being changed. Azure AD-Anmeldeinformationen müssen im folgenden Format angegeben werden: user@domain.Azure AD logins must be specified as user@domain. Zum Beispiel john.smith@contoso.com, oder als Azure AD-Gruppenname oder Anwendungsname.For example, john.smith@contoso.com, or as the Azure AD group or application name. Bei Azure AD-Anmeldeinformationen muss login_name einem vorhandenen Azure AD-Konto entsprechen, das in der Masterdatenbank erstellt wurde.For Azure AD logins, the login_name must correspond to an existing Azure AD login created in the master database.

ENABLE | DISABLE Aktiviert oder deaktiviert diese Anmeldung.ENABLE | DISABLE Enables or disables this login. Das Deaktivieren einer Anmeldung wirkt sich nicht auf das Verhalten der bereits verbundenen Anmeldungen aus.Disabling a login does not affect the behavior of logins that are already connected. (Verwenden Sie die KILL-Anweisung, um eine vorhandene Verbindung zu beenden.) Deaktivierte Anmeldungen behalten ihre Berechtigungen bei und sind weiterhin für den Identitätswechsel verfügbar.(Use the KILL statement to terminate an existing connection.) Disabled logins retain their permissions and can still be impersonated.

DEFAULT_DATABASE = database Gibt eine Standarddatenbank an, die der Anmeldung zugewiesen werden soll.DEFAULT_DATABASE =database Specifies a default database to be assigned to the login.

DEFAULT_LANGUAGE = language Gibt eine Standardsprache an, die der Anmeldung zugewiesen werden soll.DEFAULT_LANGUAGE =language Specifies a default language to be assigned to the login. Die Standardsprache für alle SQL-Datenbank-Anmeldungen ist Englisch und kann nicht geändert werden.The default language for all SQL Database logins is English and cannot be changed. Die Standardsprache der sa-Anmeldung bei SQL ServerSQL Server unter Linux ist Englisch. Diese kann jedoch geändert werden.The default language of the sa login on SQL ServerSQL Server on Linux, is English but it can be changed.

Argumente für SQL-AnmeldeinformationenArguments applicable only to SQL logins

PASSWORD =' password ' Gilt nur für SQL ServerSQL Server-Anmeldungen.PASSWORD ='password' Applies only to SQL ServerSQL Server logins. Gibt das Kennwort für die Anmeldung an, die geändert wird.Specifies the password for the login that is being changed. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive. Kennwörter gelten außerdem nicht, wenn sie mit externen Anmeldeinformationen wie Azure AD-Anmeldeinformationen verwendet werden.Passwords also do not apply when used with external logins, like Azure AD logins.

Ständig aktive Verbindungen mit SQL-Datenbank erfordern alle 10 Stunden eine erneute Authentifizierung, die von der Datenbank-Engine durchgeführt.Continuously active connections to SQL Database require reauthorization (performed by the Database Engine) at least every 10 hours. Die Datenbank-Engine versucht, eine erneute Authentifizierung mit dem ursprünglich übermittelten Kennwort durchzuführen. Dabei ist keine Eingabe des Benutzers erforderlich.The Database Engine attempts reauthorization using the originally submitted password and no user input is required. Aus Leistungsgründen wird die Verbindung nicht erneut authentifiziert, wenn ein Kennwort in SQL-Datenbank zurückgesetzt wird. Dies ist auch nicht der Fall, wenn die Verbindung aufgrund von Verbindungspooling zurückgesetzt wird.For performance reasons, when a password is reset in SQL Database, the connection will not be re-authenticated, even if the connection is reset due to connection pooling. Dies unterscheidet sich von dem Verhalten von SQL Server (lokal).This is different from the behavior of on-premises SQL Server. Wenn das Kennwort nach der ersten Authentifizierung der Verbindung geändert wurde, muss diese Verbindung beendet und eine neue unter Verwendung des neuen Kennworts hergestellt werden.If the password has been changed since the connection was initially authorized, the connection must be terminated and a new connection made using the new password. Ein Benutzer mit der KILL DATABASE CONNECTION-Berechtigung kann eine Verbindung mit SQL-Datenbank mit dem Befehl KILL explizit beenden.A user with the KILL DATABASE CONNECTION permission can explicitly terminate a connection to SQL Database by using the KILL command. Weitere Informationen finden Sie unter KILL.For more information, see KILL.

PASSWORD = hashed_password Gilt nur für das HASHED-Schlüsselwort.PASSWORD =hashed_password Applies to the HASHED keyword only. Gibt den Hashwert des Kennworts für den Anmeldenamen an, der erstellt wird.Specifies the hashed value of the password for the login that is being created.

HASHED Gilt nur für SQL ServerSQL Server-Anmeldenamen.HASHED Applies to SQL ServerSQL Server logins only. Gibt an, dass das nach dem PASSWORD-Argument eingegebene Kennwort bereits einen Hashwert darstellt.Specifies that the password entered after the PASSWORD argument is already hashed. Wenn diese Option nicht ausgewählt wird, wird aus dem Kennwort vor dem Speichern in der Datenbank ein Hashwert erstellt.If this option is not selected, the password is hashed before being stored in the database. Diese Option sollte nur für die Anmeldungssynchronisierung zwischen zwei Servern verwendet werden.This option should only be used for login synchronization between two servers. Verwenden Sie die HASHED-Option nicht, um Kennwörter routinemäßig zu ändern.Do not use the HASHED option to routinely change passwords.

OLD_PASSWORD =' oldpassword ' Gilt nur für SQL ServerSQL Server-Anmeldungen.OLD_PASSWORD ='oldpassword' Applies only to SQL ServerSQL Server logins. Das aktuelle Kennwort der Anmeldung, der ein neues Kennwort zugewiesen wird.The current password of the login to which a new password will be assigned. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

MUST_CHANGEMUST_CHANGE
Gilt nur für SQL ServerSQL Server-Anmeldungen.Applies only to SQL ServerSQL Server logins. Falls diese Option angegeben wird, fordert SQL ServerSQL Server zur Eingabe eines aktualisierten Kennworts auf, wenn die geänderte Anmeldung zum ersten Mal verwendet wird.If this option is included, SQL ServerSQL Server will prompt for an updated password the first time the altered login is used.

NAME = login_name Der neue Name der Anmeldung, die umbenannt wird.NAME = login_name The new name of the login that is being renamed. Falls es sich bei den Anmeldeinformationen um Windows-Anmeldeinformationen handelt, muss die SID des entsprechenden Windows-Prinzipals für den neuen Namen mit der SID übereinstimmen, die den Anmeldeinformationen in SQL ServerSQL Server zugeordnet ist.If the login is a Windows login, the SID of the Windows principal corresponding to the new name must match the SID associated with the login in SQL ServerSQL Server. Der neue Name einer SQL ServerSQL Server-Anmeldung darf keinen umgekehrten Schrägstrich (\) enthalten.The new name of a SQL ServerSQL Server login cannot contain a backslash character (\).

CHECK_EXPIRATION = { ON | OFF } Gilt nur für SQL ServerSQL Server-Anmeldungen.CHECK_EXPIRATION = { ON | OFF } Applies only to SQL ServerSQL Server logins. Gibt an, ob die Richtlinie für das Ablaufen von Kennwörtern für diesen Anmeldenamen erzwungen werden soll.Specifies whether password expiration policy should be enforced on this login. Der Standardwert ist OFF.The default value is OFF.

CHECK_POLICY = { ON | OFF } Gilt nur für SQL ServerSQL Server-Anmeldungen.CHECK_POLICY = { ON | OFF } Applies only to SQL ServerSQL Server logins. Gibt an, dass die Windows-Kennwortrichtlinien des Computers, auf dem SQL ServerSQL Server ausgeführt wird, für diesen Anmeldenamen erzwungen werden sollen.Specifies that the Windows password policies of the computer on which SQL ServerSQL Server is running should be enforced on this login. Der Standardwert ist ON.The default value is ON.

CREDENTIAL = credential_name Die Anmeldeinformationen, die einer SQL ServerSQL Server-Anmeldung zugeordnet werden sollen.CREDENTIAL = credential_name The name of a credential to be mapped to a SQL ServerSQL Server login. Die Anmeldeinformationen müssen bereits auf dem Server vorhanden sein.The credential must already exist in the server. Weitere Informationen finden Sie unter Anmeldeinformationen.For more information, see Credentials. Der sa-Anmeldung können keine Anmeldeinformationen zugeordnet werden.A credential cannot be mapped to the sa login.

NO CREDENTIAL Entfernt vorhandene Zuordnungen der Anmeldung zu Serveranmeldeinformationen.NO CREDENTIAL Removes any existing mapping of the login to a server credential. Weitere Informationen finden Sie unter Anmeldeinformationen.For more information, see Credentials.

UNLOCK Gilt nur für SQL ServerSQL Server-Anmeldungen.UNLOCK Applies only to SQL ServerSQL Server logins. Gibt an, dass die Sperre einer Anmeldung aufgehoben wird.Specifies that a login that is locked out should be unlocked.

ADD CREDENTIAL Fügt der Anmeldung Anmeldeinformationen eines EKM-Anbieters (Extensible Key Management, erweiterbare Schlüsselverwaltung) hinzu.ADD CREDENTIAL Adds an Extensible Key Management (EKM) provider credential to the login. Weitere Informationen finden Sie unter Erweiterbare Schlüsselverwaltung (Extensible Key Management, EKM).For more information, see Extensible Key Management (EKM).

DROP CREDENTIAL Entfernt Anmeldeinformationen eines EKM-Anbieters (Extensible Key Management, erweiterbare Schlüsselverwaltung) aus der Anmeldung.DROP CREDENTIAL Removes an Extensible Key Management (EKM) provider credential from the login. Weitere Informationen finden Sie unter Erweiterbare Schlüsselverwaltung (Extensible Key Management, EKM).For more information, see Extensible Key Management (EKM).

BemerkungenRemarks

Wenn CHECK_POLICY auf ON festgelegt ist, kann das HASHED-Argument nicht verwendet werden.When CHECK_POLICY is set to ON, the HASHED argument cannot be used.

Wenn CHECK_POLICY in ON geändert wird, passiert Folgendes:When CHECK_POLICY is changed to ON, the following behavior occurs:

  • Der Kennwortverlauf wird mit dem Wert des aktuellen Kennworthashes initialisiert.The password history is initialized with the value of the current password hash.

    Wenn CHECK_POLICY in OFF geändert wird, passiert Folgendes:When CHECK_POLICY is changed to OFF, the following behavior occurs:

  • CHECK_EXPIRATION wird ebenfalls auf OFF festgelegt.CHECK_EXPIRATION is also set to OFF.

  • Der Kennwortverlauf wird gelöscht.The password history is cleared.

  • Der Wert von lockout_time wird zurückgesetzt.The value of lockout_time is reset.

Falls MUST_CHANGE angegeben wird, müssen CHECK_EXPIRATION und CHECK_POLICY auf ON festgelegt werden.If MUST_CHANGE is specified, CHECK_EXPIRATION and CHECK_POLICY must be set to ON. Andernfalls erzeugt die Anweisung einen Fehler.Otherwise, the statement will fail.

Falls CHECK_POLICY auf OFF festgelegt ist, kann CHECK_EXPIRATION nicht auf ON festgelegt werden.If CHECK_POLICY is set to OFF, CHECK_EXPIRATION cannot be set to ON. Eine ALTER LOGIN-Anweisung mit dieser Kombination von Optionen erzeugt einen Fehler.An ALTER LOGIN statement that has this combination of options will fail.

Sie können ALTER_LOGIN mit dem DISABLE-Argument nicht dazu verwenden, den Zugriff auf eine Windows-Gruppe zu verweigern.You cannot use ALTER_LOGIN with the DISABLE argument to deny access to a Windows group. Dies ist beabsichtigt.This is by design. ALTER_LOGIN [domain\group] DISABLE gibt zum Beispiel die folgende Fehlermeldung zurück:For example, ALTER_LOGIN [domain\group] DISABLE will return the following error message:

`"Msg 15151, Level 16, State 1, Line 1
"Cannot alter the login '*Domain\Group*', because it does not exist or you do not have permission."`

In SQL-DatenbankSQL Database werden Anmeldedaten, die für die Authentifizierung einer Verbindung und Firewallregeln auf Serverebene erforderlich sind, über einen gewissen Zeitraum in jeder Datenbank gespeichert.In SQL-DatenbankSQL Database, login data required to authenticate a connection and server-level firewall rules are temporarily cached in each database. Dieser Cache wird regelmäßig aktualisiert.This cache is periodically refreshed. Führen Sie DBCC FLUSHAUTHCACHE aus, um eine Aktualisierung des Authentifizierungscache zu erzwingen und sicherzustellen, dass eine Datenbank über die aktuelle Version der Tabelle mit Anmeldenamen verfügt.To force a refresh of the authentication cache and make sure that a database has the latest version of the logins table, execute DBCC FLUSHAUTHCACHE.

BerechtigungenPermissions

Erfordert die ALTER ANY LOGIN-Berechtigung.Requires ALTER ANY LOGIN permission.

Falls die CREDENTIAL-Option verwendet wird, ist auch die ALTER ANY CREDENTIAL-Berechtigung erforderlich.If the CREDENTIAL option is used, also requires ALTER ANY CREDENTIAL permission.

Wenn die zu ändernde Anmeldung Mitglied der festen Serverrolle sysadmin oder Empfänger der CONTROL SERVER-Berechtigung ist, ist auch die CONTROL SERVER-Berechtigung für die folgenden Änderungen erforderlich:If the login that is being changed is a member of the sysadmin fixed server role or a grantee of CONTROL SERVER permission, also requires CONTROL SERVER permission when making the following changes:

  • Zurücksetzen des Kennworts ohne Eingabe des alten Kennworts.Resetting the password without supplying the old password.
  • Aktivieren von MUST_CHANGE, CHECK_POLICY oder CHECK_EXPIRATION.Enabling MUST_CHANGE, CHECK_POLICY, or CHECK_EXPIRATION.
  • Ändern des Anmeldenamens.Changing the login name.
  • Aktivieren oder Deaktivieren der Anmeldung.Enabling or disabling the login.
  • Zuordnen der Anmeldung zu anderen Anmeldeinformationen.Mapping the login to a different credential.

Ein Prinzipal kann das Kennwort, die Standardsprache und die Standarddatenbank für seine eigene Anmeldung ändern.A principal can change the password, default language, and default database for its own login.

Nur ein SQL-Prinzipal mit sysadmin-Berechtigungen kann einen ALTER LOGIN-Befehl für Azure AD-Anmeldeinformationen ausführen.Only a SQL principal with sysadmin privileges can execute an ALTER LOGIN command against an Azure AD login.

BeispieleExamples

Zu diesen Beispielen gehören auch Beispiele zur Verwendung anderer SQL-Produkte.These examples also include examples for using other SQL products. Oben sehen Sie, welche Argumente unterstützt werden.Please see which arguments are supported above.

A.A. Aktivieren einer deaktivierten AnmeldungEnabling a disabled login

Im folgenden Beispiel wird die Anmeldung Mary5 aktiviert.The following example enables the login Mary5.

ALTER LOGIN Mary5 ENABLE;

B.B. Ändern des Kennworts einer AnmeldungChanging the password of a login

Im folgenden Beispiel wird das Kennwort der Anmeldung Mary5 in ein sicheres Kennwort geändert.The following example changes the password of login Mary5 to a strong password.

ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';

C.C. Ändern des Namens einer AnmeldungChanging the name of a login

Im folgenden Beispiel wird der Name der Anmeldung Mary5 in John2 geändert.The following example changes the name of login Mary5 to John2.

ALTER LOGIN Mary5 WITH NAME = John2;

D.D. Zuordnen einer Anmeldung zu AnmeldeinformationenMapping a login to a credential

Im folgenden Beispiel wird die Anmeldung John2 den Anmeldeinformationen Custodian04 zugeordnet.The following example maps the login John2 to the credential Custodian04.

ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;

E.E. Zuordnen einer Anmeldung zu Anmeldeinformationen der erweiterbaren SchlüsselverwaltungMapping a login to an Extensible Key Management credential

Im folgenden Beispiel wird die Anmeldung Mary5 den EKM-Anmeldeinformationen EKMProvider1 zugeordnet.The following example maps the login Mary5 to the EKM credential EKMProvider1.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017 und verwaltete Azure SQL-Datenbank-Instanzen.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017, and Azure SQL Database managed instance.

ALTER LOGIN Mary5
ADD CREDENTIAL EKMProvider1;
GO

F.F. Entsperren einer AnmeldungUnlocking a login

Um eine SQL ServerSQL Server-Anmeldung zu entsperren, führen Sie die folgende Anweisung aus und ersetzen **** durch das gewünschte Kontokennwort.To unlock a SQL ServerSQL Server login, execute the following statement, replacing **** with the desired account password.

ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK ;

GO

Um eine Anmeldung zu entsperren, ohne das Kennwort zu ändern, deaktivieren Sie die Überprüfungsrichtlinie, und aktivieren Sie diese dann erneut.To unlock a login without changing the password, turn the check policy off and then on again.

ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO

G.G. Ändern des Kennworts für eine Anmeldung mit HASHEDChanging the password of a login using HASHED

Im folgenden Beispiel wird das Kennwort für die TestUser-Anmeldung in einen bereits vorhandenen Hashwert geändert.The following example changes the password of the TestUser login to an already hashed value.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017 und verwaltete Azure SQL-Datenbank-Instanzen.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017, and Azure SQL Database managed instance.

ALTER LOGIN TestUser WITH
PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED ;
GO

H.H. Deaktivieren der Anmeldeinformationen eines Azure AD-BenutzersDisabling the login of an Azure AD user

Im folgenden Beispiel werden die Anmeldeinformationen des Azure AD-Benutzers joe@contoso.com deaktiviert.The following example disables the login of an Azure AD user, joe@contoso.com.

ALTER LOGIN [joe@contoso.com] DISABLE

Weitere InformationenSee Also

SQL ServerSQL Server SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
* SQL Data
Warehouse *
* SQL Data
Warehouse *
Analytics Platform
System (PDW)
Analytics Platform
System (PDW)

 

Azure SQL Data WarehouseAzure SQL Data Warehouse

SyntaxSyntax

-- Syntax for Azure SQL Database and Azure SQL Data Warehouse

ALTER LOGIN login_name
  {
      <status_option>
    | WITH <set_option> [ ,.. .n ]
  }
[;]

<status_option> ::=
    ENABLE | DISABLE

<set_option> ::=
    PASSWORD ='password'
    [
      OLD_PASSWORD ='oldpassword'
    ]
    | NAME = login_name

ArgumenteArguments

login_name Gibt den Namen der SQL ServerSQL Server-Anmeldung an, die geändert wird.login_name Specifies the name of the SQL ServerSQL Server login that is being changed. Domänenanmeldungen müssen in Klammern eingeschlossen werden: [Domäne\Benutzer].Domain logins must be enclosed in brackets in the format [domain\user].

ENABLE | DISABLE Aktiviert oder deaktiviert diese Anmeldung.ENABLE | DISABLE Enables or disables this login. Das Deaktivieren einer Anmeldung wirkt sich nicht auf das Verhalten der bereits verbundenen Anmeldungen aus.Disabling a login does not affect the behavior of logins that are already connected. (Verwenden Sie die KILL-Anweisung, um eine vorhandene Verbindung zu beenden.) Deaktivierte Anmeldungen behalten ihre Berechtigungen bei und sind weiterhin für den Identitätswechsel verfügbar.(Use the KILL statement to terminate an existing connections.) Disabled logins retain their permissions and can still be impersonated.

PASSWORD =' password ' Gilt nur für SQL ServerSQL Server-Anmeldungen.PASSWORD ='password' Applies only to SQL ServerSQL Server logins. Gibt das Kennwort für die Anmeldung an, die geändert wird.Specifies the password for the login that is being changed. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

Ständig aktive Verbindungen mit SQL-Datenbank erfordern alle 10 Stunden eine erneute Authentifizierung, die von der Datenbank-Engine durchgeführt.Continuously active connections to SQL Database require reauthorization (performed by the Database Engine) at least every 10 hours. Die Datenbank-Engine versucht, eine erneute Authentifizierung mit dem ursprünglich übermittelten Kennwort durchzuführen. Dabei ist keine Eingabe des Benutzers erforderlich.The Database Engine attempts reauthorization using the originally submitted password and no user input is required. Aus Leistungsgründen wird die Verbindung nicht erneut authentifiziert, wenn ein Kennwort in SQL-Datenbank zurückgesetzt wird. Dies ist auch nicht der Fall, wenn die Verbindung aufgrund von Verbindungspooling zurückgesetzt wird.For performance reasons, when a password is reset in SQL Database, the connection will not be re-authenticated, even if the connection is reset due to connection pooling. Dies unterscheidet sich von dem Verhalten von SQL Server (lokal).This is different from the behavior of on-premises SQL Server. Wenn das Kennwort nach der ersten Authentifizierung der Verbindung geändert wurde, muss diese Verbindung beendet und eine neue unter Verwendung des neuen Kennworts hergestellt werden.If the password has been changed since the connection was initially authorized, the connection must be terminated and a new connection made using the new password. Ein Benutzer mit der KILL DATABASE CONNECTION-Berechtigung kann eine Verbindung mit SQL-Datenbank mit dem Befehl KILL explizit beenden.A user with the KILL DATABASE CONNECTION permission can explicitly terminate a connection to SQL Database by using the KILL command. Weitere Informationen finden Sie unter KILL.For more information, see KILL.

Wichtig

Wenn für eine Anmeldung (oder den Benutzer einer eigenständigen Datenbank) eine Verbindung hergestellt und diese authentifiziert wird, werden von der Verbindung Identitätsinformationen zur Anmeldung zwischengespeichert.When a login (or a contained database user) connects and is authenticated, the connection caches identity information about the login. Bei einer Anmeldung unter Verwendung der Windows-Authentifizierung umfassen die Informationen Angaben zur Mitgliedschaft in Windows-Gruppen.For a Windows Authentication login, this includes information about membership in Windows groups. Die Identität der Anmeldung bleibt für die Dauer der Verbindung authentifiziert.The identity of the login remains authenticated as long as the connection is maintained. Um Identitätsänderungen zu erzwingen, z. B. das Zurücksetzen eines Kennworts oder eine Änderung der Windows-Gruppenmitgliedschaft, muss die Anmeldung von der Authentifizierungsstelle (Windows oder SQL ServerSQL Server) abgemeldet und erneut angemeldet werden.To force changes in the identity, such as a password reset or change in Windows group membership, the login must logoff from the authentication authority (Windows or SQL ServerSQL Server), and log in again. Ein Mitglied der festen Serverrolle sysadmin oder eine beliebige Anmeldung mit der ALTER ANY CONNECTION -Berechtigung kann den KILL -Befehl verwenden, um eine Verbindung zu beenden und zu erzwingen, dass für eine Anmeldung eine erneute Verbindung hergestellt wird.A member of the sysadmin fixed server role or any login with the ALTER ANY CONNECTION permission can use the KILL command to end a connection and force a login to reconnect. SQL Server Management StudioSQL Server Management Studio ist in der Lage, Verbindungsinformationen wiederzuverwenden, wenn mehrere Verbindungen mit dem Fenster Objekt-Explorer und Abfrage-Editor hergestellt werden.can reuse connection information when opening multiple connections to Object Explorer and Query Editor windows. Schließen Sie alle Verbindungen, um eine erneute Verbindung zu erzwingen.Close all connections to force reconnection.

OLD_PASSWORD =' oldpassword ' Gilt nur für SQL ServerSQL Server-Anmeldungen.OLD_PASSWORD ='oldpassword' Applies only to SQL ServerSQL Server logins. Das aktuelle Kennwort der Anmeldung, der ein neues Kennwort zugewiesen wird.The current password of the login to which a new password will be assigned. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

NAME = login_name Der neue Name der Anmeldung, die umbenannt wird.NAME = login_name The new name of the login that is being renamed. Falls es sich dabei um eine Windows-Anmeldung handelt, muss die SID des entsprechenden Windows-Prinzipals für den neuen Namen mit der SID übereinstimmen, die der Anmeldung in SQL ServerSQL Server zugeordnet ist.If this is a Windows login, the SID of the Windows principal corresponding to the new name must match the SID associated with the login in SQL ServerSQL Server. Der neue Name einer SQL ServerSQL Server-Anmeldung darf keinen umgekehrten Schrägstrich (\) enthalten.The new name of a SQL ServerSQL Server login cannot contain a backslash character (\).

BemerkungenRemarks

In SQL-DatenbankSQL Database werden Anmeldedaten, die für die Authentifizierung einer Verbindung und Firewallregeln auf Serverebene erforderlich sind, über einen gewissen Zeitraum in jeder Datenbank gespeichert.In SQL-DatenbankSQL Database, login data required to authenticate a connection and server-level firewall rules are temporarily cached in each database. Dieser Cache wird regelmäßig aktualisiert.This cache is periodically refreshed. Führen Sie DBCC FLUSHAUTHCACHE aus, um das Aktualisieren der Authentifizierungsdatenbank zu erzwingen und sicherzustellen, dass die Datenbank über die aktuelle Version der Tabelle mit Anmeldenamen verfügt.To force a refresh of the authentication cache and make sure that a database has the latest version of the logins table, execute DBCC FLUSHAUTHCACHE.

BerechtigungenPermissions

Erfordert die ALTER ANY LOGIN-Berechtigung.Requires ALTER ANY LOGIN permission.

Wenn die zu ändernde Anmeldung Mitglied der festen Serverrolle sysadmin oder Empfänger der CONTROL SERVER-Berechtigung ist, ist auch die CONTROL SERVER-Berechtigung für die folgenden Änderungen erforderlich:If the login that is being changed is a member of the sysadmin fixed server role or a grantee of CONTROL SERVER permission, also requires CONTROL SERVER permission when making the following changes:

  • Zurücksetzen des Kennworts ohne Eingabe des alten Kennworts.Resetting the password without supplying the old password.
  • Ändern des Anmeldenamens.Changing the login name.
  • Aktivieren oder Deaktivieren der Anmeldung.Enabling or disabling the login.
  • Zuordnen der Anmeldung zu anderen Anmeldeinformationen.Mapping the login to a different credential.

Ein Prinzipal kann das Kennwort seiner eigenen Anmeldung ändern.A principal can change the password for its own login.

BeispieleExamples

Zu diesen Beispielen gehören auch Beispiele zur Verwendung anderer SQL-Produkte.These examples also include examples for using other SQL products. Oben sehen Sie, welche Argumente unterstützt werden.Please see which arguments are supported above.

A.A. Aktivieren einer deaktivierten AnmeldungEnabling a disabled login

Im folgenden Beispiel wird die Anmeldung Mary5 aktiviert.The following example enables the login Mary5.

ALTER LOGIN Mary5 ENABLE;

B.B. Ändern des Kennworts einer AnmeldungChanging the password of a login

Im folgenden Beispiel wird das Kennwort der Anmeldung Mary5 in ein sicheres Kennwort geändert.The following example changes the password of login Mary5 to a strong password.

ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';

C.C. Ändern des Namens einer AnmeldungChanging the name of a login

Im folgenden Beispiel wird der Name der Anmeldung Mary5 in John2 geändert.The following example changes the name of login Mary5 to John2.

ALTER LOGIN Mary5 WITH NAME = John2;

D.D. Zuordnen einer Anmeldung zu AnmeldeinformationenMapping a login to a credential

Im folgenden Beispiel wird die Anmeldung John2 den Anmeldeinformationen Custodian04 zugeordnet.The following example maps the login John2 to the credential Custodian04.

ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;

E.E. Zuordnen einer Anmeldung zu Anmeldeinformationen der erweiterbaren SchlüsselverwaltungMapping a login to an Extensible Key Management credential

Im folgenden Beispiel wird die Anmeldung Mary5 den EKM-Anmeldeinformationen EKMProvider1 zugeordnet.The following example maps the login Mary5 to the EKM credential EKMProvider1.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

ALTER LOGIN Mary5
ADD CREDENTIAL EKMProvider1;
GO

F.F. Entsperren einer AnmeldungUnlocking a login

Um eine SQL ServerSQL Server-Anmeldung zu entsperren, führen Sie die folgende Anweisung aus und ersetzen **** durch das gewünschte Kontokennwort.To unlock a SQL ServerSQL Server login, execute the following statement, replacing **** with the desired account password.

ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK ;

GO

Um eine Anmeldung zu entsperren, ohne das Kennwort zu ändern, deaktivieren Sie die Überprüfungsrichtlinie, und aktivieren Sie diese dann erneut.To unlock a login without changing the password, turn the check policy off and then on again.

ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO

G.G. Ändern des Kennworts für eine Anmeldung mit HASHEDChanging the password of a login using HASHED

Im folgenden Beispiel wird das Kennwort für die TestUser-Anmeldung in einen bereits vorhandenen Hashwert geändert.The following example changes the password of the TestUser login to an already hashed value.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

ALTER LOGIN TestUser WITH
PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED ;
GO

Weitere InformationenSee Also

SQL ServerSQL Server SQL-Datenbank
Singleton/Pool für elastische Datenbanken
SQL Database
single database/elastic pool
SQL-Datenbank
verwaltete Instanz
SQL Database
managed instance
SQL Data
Warehouse
SQL Data
Warehouse
* Analytics
Platform System (PDW) *
* Analytics
Platform System (PDW) *

 

AnalyseplattformsystemAnalytics Platform System

SyntaxSyntax

-- Syntax for Analytics Platform System

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

ArgumenteArguments

login_name Gibt den Namen der SQL ServerSQL Server-Anmeldung an, die geändert wird.login_name Specifies the name of the SQL ServerSQL Server login that is being changed. Domänenanmeldungen müssen in Klammern eingeschlossen werden: [Domäne\Benutzer].Domain logins must be enclosed in brackets in the format [domain\user].

ENABLE | DISABLE Aktiviert oder deaktiviert diese Anmeldung.ENABLE | DISABLE Enables or disables this login. Das Deaktivieren einer Anmeldung wirkt sich nicht auf das Verhalten der bereits verbundenen Anmeldungen aus.Disabling a login does not affect the behavior of logins that are already connected. (Verwenden Sie die KILL-Anweisung, um eine vorhandene Verbindung zu beenden.) Deaktivierte Anmeldungen behalten ihre Berechtigungen bei und sind weiterhin für den Identitätswechsel verfügbar.(Use the KILL statement to terminate an existing connection.) Disabled logins retain their permissions and can still be impersonated.

PASSWORD =' password ' Gilt nur für SQL ServerSQL Server-Anmeldungen.PASSWORD ='password' Applies only to SQL ServerSQL Server logins. Gibt das Kennwort für die Anmeldung an, die geändert wird.Specifies the password for the login that is being changed. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

Wichtig

Wenn für eine Anmeldung (oder den Benutzer einer eigenständigen Datenbank) eine Verbindung hergestellt und diese authentifiziert wird, werden von der Verbindung Identitätsinformationen zur Anmeldung zwischengespeichert.When a login (or a contained database user) connects and is authenticated, the connection caches identity information about the login. Bei einer Anmeldung unter Verwendung der Windows-Authentifizierung umfassen die Informationen Angaben zur Mitgliedschaft in Windows-Gruppen.For a Windows Authentication login, this includes information about membership in Windows groups. Die Identität der Anmeldung bleibt für die Dauer der Verbindung authentifiziert.The identity of the login remains authenticated as long as the connection is maintained. Um Identitätsänderungen zu erzwingen, z. B. das Zurücksetzen eines Kennworts oder eine Änderung der Windows-Gruppenmitgliedschaft, muss die Anmeldung von der Authentifizierungsstelle (Windows oder SQL ServerSQL Server) abgemeldet und erneut angemeldet werden.To force changes in the identity, such as a password reset or change in Windows group membership, the login must logoff from the authentication authority (Windows or SQL ServerSQL Server), and log in again. Ein Mitglied der festen Serverrolle sysadmin oder eine beliebige Anmeldung mit der ALTER ANY CONNECTION -Berechtigung kann den KILL -Befehl verwenden, um eine Verbindung zu beenden und zu erzwingen, dass für eine Anmeldung eine erneute Verbindung hergestellt wird.A member of the sysadmin fixed server role or any login with the ALTER ANY CONNECTION permission can use the KILL command to end a connection and force a login to reconnect. SQL Server Management StudioSQL Server Management Studio ist in der Lage, Verbindungsinformationen wiederzuverwenden, wenn mehrere Verbindungen mit dem Fenster Objekt-Explorer und Abfrage-Editor hergestellt werden.can reuse connection information when opening multiple connections to Object Explorer and Query Editor windows. Schließen Sie alle Verbindungen, um eine erneute Verbindung zu erzwingen.Close all connections to force reconnection.

OLD_PASSWORD =' oldpassword ' Gilt nur für SQL ServerSQL Server-Anmeldungen.OLD_PASSWORD ='oldpassword' Applies only to SQL ServerSQL Server logins. Das aktuelle Kennwort der Anmeldung, der ein neues Kennwort zugewiesen wird.The current password of the login to which a new password will be assigned. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.Passwords are case-sensitive.

MUST_CHANGE Gilt nur für SQL ServerSQL Server-Anmeldungen.MUST_CHANGE Applies only to SQL ServerSQL Server logins. Falls diese Option angegeben wird, fordert SQL ServerSQL Server zur Eingabe eines aktualisierten Kennworts auf, wenn die geänderte Anmeldung zum ersten Mal verwendet wird.If this option is included, SQL ServerSQL Server will prompt for an updated password the first time the altered login is used.

NAME = login_name Der neue Name der Anmeldung, die umbenannt wird.NAME = login_name The new name of the login that is being renamed. Falls es sich bei den Anmeldeinformationen um Windows-Anmeldeinformationen handelt, muss die SID des entsprechenden Windows-Prinzipals für den neuen Namen mit der SID übereinstimmen, die den Anmeldeinformationen in SQL ServerSQL Server zugeordnet ist.If the login is a Windows login, the SID of the Windows principal corresponding to the new name must match the SID associated with the login in SQL ServerSQL Server. Der neue Name einer SQL ServerSQL Server-Anmeldung darf keinen umgekehrten Schrägstrich (\) enthalten.The new name of a SQL ServerSQL Server login cannot contain a backslash character (\).

CHECK_EXPIRATION = { ON | OFF } Gilt nur für SQL ServerSQL Server-Anmeldungen.CHECK_EXPIRATION = { ON | OFF } Applies only to SQL ServerSQL Server logins. Gibt an, ob die Richtlinie für das Ablaufen von Kennwörtern für diesen Anmeldenamen erzwungen werden soll.Specifies whether password expiration policy should be enforced on this login. Der Standardwert ist OFF.The default value is OFF.

CHECK_POLICY = { ON | OFF } Gilt nur für SQL ServerSQL Server-Anmeldungen.CHECK_POLICY = { ON | OFF } Applies only to SQL ServerSQL Server logins. Gibt an, dass die Windows-Kennwortrichtlinien des Computers, auf dem SQL ServerSQL Server ausgeführt wird, für diesen Anmeldenamen erzwungen werden sollen.Specifies that the Windows password policies of the computer on which SQL ServerSQL Server is running should be enforced on this login. Der Standardwert ist ON.The default value is ON.

UNLOCK Gilt nur für SQL ServerSQL Server-Anmeldungen.UNLOCK Applies only to SQL ServerSQL Server logins. Gibt an, dass die Sperre einer Anmeldung aufgehoben wird.Specifies that a login that is locked out should be unlocked.

BemerkungenRemarks

Wenn CHECK_POLICY auf ON festgelegt ist, kann das HASHED-Argument nicht verwendet werden.When CHECK_POLICY is set to ON, the HASHED argument cannot be used.

Wenn CHECK_POLICY in ON geändert wird, passiert Folgendes:When CHECK_POLICY is changed to ON, the following behavior occurs:

  • Der Kennwortverlauf wird mit dem Wert des aktuellen Kennworthashes initialisiert.The password history is initialized with the value of the current password hash.

    Wenn CHECK_POLICY in OFF geändert wird, passiert Folgendes:When CHECK_POLICY is changed to OFF, the following behavior occurs:

  • CHECK_EXPIRATION wird ebenfalls auf OFF festgelegt.CHECK_EXPIRATION is also set to OFF.

  • Der Kennwortverlauf wird gelöscht.The password history is cleared.

  • Der Wert von lockout_time wird zurückgesetzt.The value of lockout_time is reset.

Falls MUST_CHANGE angegeben wird, müssen CHECK_EXPIRATION und CHECK_POLICY auf ON festgelegt werden.If MUST_CHANGE is specified, CHECK_EXPIRATION and CHECK_POLICY must be set to ON. Andernfalls erzeugt die Anweisung einen Fehler.Otherwise, the statement will fail.

Falls CHECK_POLICY auf OFF festgelegt ist, kann CHECK_EXPIRATION nicht auf ON festgelegt werden.If CHECK_POLICY is set to OFF, CHECK_EXPIRATION cannot be set to ON. Eine ALTER LOGIN-Anweisung mit dieser Kombination von Optionen erzeugt einen Fehler.An ALTER LOGIN statement that has this combination of options will fail.

Sie können ALTER_LOGIN mit dem DISABLE-Argument nicht dazu verwenden, den Zugriff auf eine Windows-Gruppe zu verweigern.You cannot use ALTER_LOGIN with the DISABLE argument to deny access to a Windows group. Dies ist beabsichtigt.This is by design. ALTER_LOGIN [domain\group] DISABLE gibt zum Beispiel die folgende Fehlermeldung zurück:For example, ALTER_LOGIN [domain\group] DISABLE will return the following error message:

`"Msg 15151, Level 16, State 1, Line 1
"Cannot alter the login '*Domain\Group*', because it does not exist or you do not have permission."`

In SQL-DatenbankSQL Database werden Anmeldedaten, die für die Authentifizierung einer Verbindung und Firewallregeln auf Serverebene erforderlich sind, über einen gewissen Zeitraum in jeder Datenbank gespeichert.In SQL-DatenbankSQL Database, login data required to authenticate a connection and server-level firewall rules are temporarily cached in each database. Dieser Cache wird regelmäßig aktualisiert.This cache is periodically refreshed. Führen Sie DBCC FLUSHAUTHCACHE aus, um eine Aktualisierung des Authentifizierungscache zu erzwingen und sicherzustellen, dass eine Datenbank über die aktuelle Version der Tabelle mit Anmeldenamen verfügt.To force a refresh of the authentication cache and make sure that a database has the latest version of the logins table, execute DBCC FLUSHAUTHCACHE.

BerechtigungenPermissions

Erfordert die ALTER ANY LOGIN-Berechtigung.Requires ALTER ANY LOGIN permission.

Falls die CREDENTIAL-Option verwendet wird, ist auch die ALTER ANY CREDENTIAL-Berechtigung erforderlich.If the CREDENTIAL option is used, also requires ALTER ANY CREDENTIAL permission.

Wenn die zu ändernde Anmeldung Mitglied der festen Serverrolle sysadmin oder Empfänger der CONTROL SERVER-Berechtigung ist, ist auch die CONTROL SERVER-Berechtigung für die folgenden Änderungen erforderlich:If the login that is being changed is a member of the sysadmin fixed server role or a grantee of CONTROL SERVER permission, also requires CONTROL SERVER permission when making the following changes:

  • Zurücksetzen des Kennworts ohne Eingabe des alten Kennworts.Resetting the password without supplying the old password.
  • Aktivieren von MUST_CHANGE, CHECK_POLICY oder CHECK_EXPIRATION.Enabling MUST_CHANGE, CHECK_POLICY, or CHECK_EXPIRATION.
  • Ändern des Anmeldenamens.Changing the login name.
  • Aktivieren oder Deaktivieren der Anmeldung.Enabling or disabling the login.
  • Zuordnen der Anmeldung zu anderen Anmeldeinformationen.Mapping the login to a different credential.

Ein Prinzipal kann das Kennwort, die Standardsprache und die Standarddatenbank für seine eigene Anmeldung ändern.A principal can change the password, default language, and default database for its own login.

BeispieleExamples

Zu diesen Beispielen gehören auch Beispiele zur Verwendung anderer SQL-Produkte.These examples also include examples for using other SQL products. Oben sehen Sie, welche Argumente unterstützt werden.Please see which arguments are supported above.

A.A. Aktivieren einer deaktivierten AnmeldungEnabling a disabled login

Im folgenden Beispiel wird die Anmeldung Mary5 aktiviert.The following example enables the login Mary5.

ALTER LOGIN Mary5 ENABLE;

B.B. Ändern des Kennworts einer AnmeldungChanging the password of a login

Im folgenden Beispiel wird das Kennwort der Anmeldung Mary5 in ein sicheres Kennwort geändert.The following example changes the password of login Mary5 to a strong password.

ALTER LOGIN Mary5 WITH PASSWORD = '<enterStrongPasswordHere>';

C.C. Ändern des Namens einer AnmeldungChanging the name of a login

Im folgenden Beispiel wird der Name der Anmeldung Mary5 in John2 geändert.The following example changes the name of login Mary5 to John2.

ALTER LOGIN Mary5 WITH NAME = John2;

D.D. Zuordnen einer Anmeldung zu AnmeldeinformationenMapping a login to a credential

Im folgenden Beispiel wird die Anmeldung John2 den Anmeldeinformationen Custodian04 zugeordnet.The following example maps the login John2 to the credential Custodian04.

ALTER LOGIN John2 WITH CREDENTIAL = Custodian04;

E.E. Zuordnen einer Anmeldung zu Anmeldeinformationen der erweiterbaren SchlüsselverwaltungMapping a login to an Extensible Key Management credential

Im folgenden Beispiel wird die Anmeldung Mary5 den EKM-Anmeldeinformationen EKMProvider1 zugeordnet.The following example maps the login Mary5 to the EKM credential EKMProvider1.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

ALTER LOGIN Mary5
ADD CREDENTIAL EKMProvider1;
GO

F.F. Entsperren einer AnmeldungUnlocking a login

Um eine SQL ServerSQL Server-Anmeldung zu entsperren, führen Sie die folgende Anweisung aus und ersetzen **** durch das gewünschte Kontokennwort.To unlock a SQL ServerSQL Server login, execute the following statement, replacing **** with the desired account password.

ALTER LOGIN [Mary5] WITH PASSWORD = '****' UNLOCK ;

GO

Um eine Anmeldung zu entsperren, ohne das Kennwort zu ändern, deaktivieren Sie die Überprüfungsrichtlinie, und aktivieren Sie diese dann erneut.To unlock a login without changing the password, turn the check policy off and then on again.

ALTER LOGIN [Mary5] WITH CHECK_POLICY = OFF;
ALTER LOGIN [Mary5] WITH CHECK_POLICY = ON;
GO

G.G. Ändern des Kennworts für eine Anmeldung mit HASHEDChanging the password of a login using HASHED

Im folgenden Beispiel wird das Kennwort für die TestUser-Anmeldung in einen bereits vorhandenen Hashwert geändert.The following example changes the password of the TestUser login to an already hashed value.

Gilt für: SQL Server 2008SQL Server 2008 bis SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

ALTER LOGIN TestUser WITH
PASSWORD = 0x01000CF35567C60BFB41EBDE4CF700A985A13D773D6B45B90900 HASHED ;
GO

Weitere InformationenSee Also