ALTER LOGIN (Transact-SQL)

Aktualisiert: 12. Dezember 2006

Ändert die Eigenschaften eines SQL Server-Anmeldekontos.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

ALTER LOGIN login_name 
    { 
    <status_option> 
    | WITH <set_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

Argumente

  • login_name
    Gibt den Namen des SQL Server-Anmeldenamens an, der geändert wird.
  • ENABLE | DISABLE
    Aktiviert oder deaktiviert diesen Anmeldenamen.
  • PASSWORD = 'password'
    Gilt nur für SQL Server-Anmeldenamen. Gibt das Kennwort für den Anmeldenamen an, der geändert wird. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.
  • PASSWORD **=**hashed_password
    Gilt nur für das HASHED-Schlüsselwort. Gibt den Hashwert für das Kennwort der Anmeldung an, die erstellt wird.
  • HASHED
    Gilt nur für SQL Server-Anmeldenamen. Gibt an, dass das nach dem PASSWORD-Argument eingegebene Kennwort bereits einen Hashwert darstellt. Wenn diese Option nicht ausgewählt wird, wird aus dem Kennwort vor dem Speichern in der Datenbank ein Hashwert erstellt.

    ms189828.note(de-de,SQL.90).gifHinweis:
    Dieses Argument kann nur mit Hashes verwendet werden, die in SQL Server 2000 oder in höheren Versionen generiert wurden.
  • OLD_PASSWORD ='oldpassword'
    Gilt nur für SQL Server-Anmeldenamen. Das aktuelle Kennwort des Anmeldenamens, dem ein neues Kennwort zugewiesen wird. Bei Kennwörtern wird nach Groß- und Kleinschreibung unterschieden.
  • MUST_CHANGE
    Gilt nur für SQL Server-Anmeldenamen. Falls diese Option angegeben wird, fordert SQL Server zur Eingabe eines aktualisierten Kennwortes auf, wenn der geänderte Anmeldename zum ersten Mal verwendet wird.
  • DEFAULT_DATABASE **=**database
    Gibt eine Standarddatenbank an, die dem Anmeldenamen zugewiesen werden soll.
  • DEFAULT_LANGUAGE **=**language
    Gibt eine Standardsprache an, die dem Anmeldenamen zugewiesen werden soll.
  • NAME = login_name
    Der neue Name des Anmeldenamens, der umbenannt wird. Falls es sich dabei um einen Windows-Anmeldenamen handelt, muss die SID des entsprechenden Windows-Prinzipals für den neuen Namen mit der SID übereinstimmen, die dem Anmeldenamen in SQL Server zugeordnet ist. Der neue Name eines SQL Server-Anmeldenamens darf keinen umgekehrten Schrägstrich (\) enthalten.
  • CHECK_EXPIRATION = { ON | OFF }
    Gilt nur für SQL Server-Anmeldenamen. Gibt an, ob die Richtlinie für das Ablaufen von Kennwörtern für diesen Anmeldenamen erzwungen werden soll. Der Standardwert ist OFF.
  • CHECK_POLICY = { ON | OFF }
    Gilt nur für SQL Server-Anmeldenamen. Gibt an, dass die Windows-Kennwortrichtlinien des Computers, auf dem SQL Server ausgeführt wird, für diesen Anmeldenamen erzwungen werden sollen. Der Standardwert ist ON.
  • CREDENTIAL = credential_name
    Die Anmeldeinformationen, die einem SQL Server-Anmeldenamen zugeordnet werden sollen. Die Anmeldeinformationen müssen bereits auf dem Server vorhanden sein. Weitere Informationen finden Sie unter Anmeldeinformationen.
  • NO CREDENTIAL
    Entfernt vorhandene Zuordnungen des Anmeldenamens zu Serveranmeldeinformationen. Weitere Informationen finden Sie unter Anmeldeinformationen.
  • UNLOCK
    Gilt nur für SQL Server-Anmeldenamen. Gibt an, dass die Sperre eines Anmeldenamens aufgehoben wird.

Hinweise

Wenn CHECK_POLICY auf ON festgelegt ist, kann das HASHED-Argument nicht verwendet werden.

Wenn CHECK_POLICY in ON geändert wird, passiert Folgendes:

  • CHECK_EXPIRATION wird ebenfalls auf ON festgelegt, es sei denn, diese Option wird explizit auf OFF festgelegt.
  • Der Kennwortverlauf wird mit dem Wert des aktuellen Kennworthashs initialisiert.

Wenn CHECK_POLICY in OFF geändert wird, passiert Folgendes:

  • CHECK_EXPIRATION wird ebenfalls auf OFF festgelegt.
  • Der Kennwortverlauf wird gelöscht.
  • Der Wert von lockout_time wird zurückgesetzt.

Falls MUST_CHANGE angegeben wird, müssen CHECK_EXPIRATION und CHECK_POLICY auf ON festgelegt werden. Andernfalls erzeugt die Anweisung einen Fehler.

Falls CHECK_POLICY auf OFF festgelegt ist, kann CHECK_EXPIRATION nicht auf ON festgelegt werden. Eine ALTER LOGIN-Anweisung mit dieser Kombination von Optionen erzeugt einen Fehler.

ms189828.note(de-de,SQL.90).gifWichtig:
CHECK_EXPIRATION und CHECK_POLICY werden nur unter und höher erzwungen. Weitere Informationen finden Sie unter Kennwortrichtlinie.
ms189828.note(de-de,SQL.90).gifWichtig:
Ein bekanntes Problem in verhindert möglicherweise, dass die fehlerhafte Kennwortanzahl zurückgesetzt wird, nachdem der Schwellenwert für die Kontosperrung erreicht wurde. Dies kann zur sofortigen Sperrung nachfolgender fehlgeschlagener Anmeldeversuche führen. Sie können die fehlerhafte Kennwortanzahl zurücksetzen, indem Sie CHECK_POLICY = OFF und dann CHECK_POLICY = ON festlegen. Weitere Informationen zum Schwellenwert für die Kontosperrung finden Sie im Microsoft Knowledge Base-Artikel 818078: Benutzerkonten werden möglicherweise vorzeitig gesperrt.

Sie können ALTER_LOGIN mit dem DISABLE-Argument nicht dazu verwenden, den Zugriff auf eine Windows-Gruppe zu verweigern. Beispielsweise wird mit ALTER_LOGIN [domain\group] DISABLE ungefähr folgende Fehlermeldung zurückgegeben:

"Meldung 15151, Ebene 16, Status 1, Zeile 1"

"Der Anmeldename "Domain\Group" kann nicht geändert werden, da er nicht vorhanden ist oder Sie keine entsprechende Berechtigung besitzen."

Dies ist programmbedingt.

Berechtigungen

Erfordert die ALTER ANY LOGIN-Berechtigung.

Falls die Option CREDENTIAL verwendet wird, ist auch die ALTER ANY CREDENTIAL-Berechtigung erforderlich.

Wenn der Anmeldename, der geändert wird, ein Berechtigter der CONTROL SERVER-Berechtigung ist, ist die CONTROL SERVER-Berechtigung auch für die folgenden Änderungen erforderlich:

  • Zurücksetzen des Kennwortes ohne Eingabe des alten Kennwortes.
  • Aktivieren von MUST_CHANGE, CHECK_POLICY oder CHECK_EXPIRATION.
  • Ändern des Anmeldenamens.
  • Aktivieren oder Deaktivieren des Anmeldenamens.
  • Zuordnen des Anmeldenamens zu anderen Anmeldeinformationen.

Ein Prinzipal kann das Kennwort, die Standardsprache und die Standarddatenbank für seinen eigenen Anmeldenamen ändern.

Beispiele

A. Aktivieren eines deaktivierten Anmeldenamens

Im folgenden Beispiel wird der Anmeldename Mary5 aktiviert.

ALTER LOGIN Mary5 ENABLE;

B. Ändern des Kennwortes eines Anmeldenamens

Im folgenden Beispiel wird das Kennwort von Mary5 geändert.

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

C. Ändern des Namens eines Anmeldenamens

Im folgenden Beispiel wird der Name des Anmeldenamens Mary5 in Joe2 geändert.

ALTER LOGIN Mary5 WITH NAME = Joe2;

D. Zuordnen eines Anmeldenamens zu Anmeldeinformationen

Im folgenden Beispiel wird der Anmeldename Joe2 den Anmeldeinformationen Custodian04 zugeordnet.

ALTER LOGIN Joe2 WITH CREDENTIAL = Custodian04;

Siehe auch

Verweis

CREATE LOGIN (Transact-SQL)
DROP LOGIN (Transact-SQL)
CREATE CREDENTIAL (Transact-SQL)
EVENTDATA (Transact-SQL)

Andere Ressourcen

Anmeldeinformationen

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

12. Dezember 2006

Neuer Inhalt:
  • Informationen zum HASHED-Argument ergänzt.
  • Informationen zur Verwendung des DISABLE-Arguments zum Verhindern des Zugriffs auf eine Windows-Gruppe ergänzt.