ALTER LOGIN(Transact-SQL)

업데이트: 2006년 12월 12일

SQL Server 로그인 계정의 속성을 변경합니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

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

인수

  • login_name
    변경할 SQL Server 로그인의 이름을 지정합니다.
  • ENABLE | DISABLE
    로그인을 활성화화거나 비활성화합니다.
  • PASSWORD = 'password'
    SQL Server 로그인에만 적용됩니다. 변경할 로그인의 암호를 지정합니다. 암호는 대소문자를 구분합니다.
  • PASSWORD **=**hashed_password
    HASHED 키워드에만 적용됩니다. 생성되는 로그인의 암호에 대한 해시된 값을 지정합니다.
  • HASHED
    SQL Server 로그인에만 적용됩니다. PASSWORD 인수 다음에 입력한 암호가 이미 해시되었음을 지정합니다. 이 옵션을 선택하지 않으면 암호가 데이터베이스에 저장되기 전에 해시됩니다.

    [!참고] 이 인수는 SQL Server 2000 이후 버전에서 생성된 해시에서만 작동합니다.

  • OLD_PASSWORD ='oldpassword'
    SQL Server 로그인에만 적용됩니다. 새 암호가 할당될 로그인의 현재 암호입니다. 암호는 대소문자를 구분합니다.
  • MUST_CHANGE
    SQL Server 로그인에만 적용됩니다. 이 옵션을 지정한 경우 변경한 로그인을 처음 사용할 때 SQL Server에서는 업데이트된 암호를 묻는 메시지를 표시합니다.
  • DEFAULT_DATABASE **=**database
    로그인에 할당할 기본 데이터베이스를 지정합니다.
  • DEFAULT_LANGUAGE **=**language
    로그인에 할당할 기본 언어를 지정합니다.
  • NAME = login_name
    이름을 바꿀 로그인의 새 이름입니다. Windows 로그인인 경우 새 사용자에 해당하는 Windows 보안 주체의 SID가 SQL Server의 로그인에 연결된 SID와 일치해야 합니다. SQL Server 로그인의 새 이름에는 백슬래시(\)를 사용할 수 없습니다.
  • CHECK_EXPIRATION = { ON | OFF }
    SQL Server 로그인에만 적용됩니다. 이 로그인에 암호 만료 정책을 적용할지 여부를 지정합니다. 기본값은 OFF입니다.
  • CHECK_POLICY = { ON | OFF }
    SQL Server 로그인에만 적용됩니다. SQL Server가 실행 중인 컴퓨터의 Windows 암호 정책을 이 로그인에 적용하도록 지정합니다. 기본값은 ON입니다.
  • CREDENTIAL = credential_name
    SQL Server 로그인에 매핑될 자격 증명의 이름입니다. 자격 증명이 서버에 이미 있어야 합니다. 자세한 내용은 자격 증명을 참조하십시오.
  • NO CREDENTIAL
    서버 자격 증명에 대한 로그인의 기존 매핑을 모두 제거합니다. 자세한 내용은 자격 증명을 참조하십시오.
  • UNLOCK
    SQL Server 로그인에만 적용됩니다. 잠긴 로그인을 잠금 해제하도록 지정합니다.

주의

CHECK_POLICY를 ON으로 설정하면 HASHED 인수를 사용할 수 없습니다.

CHECK_POLICY가 ON으로 변경되면 다음 동작이 수행됩니다.

  • CHECK_EXPIRATION이 명시적으로 OFF로 설정되어 있지 않은 경우 ON으로 설정됩니다.
  • 암호 기록이 현재 암호 해시 값으로 초기화됩니다.

CHECK_POLICY가 OFF로 변경되면 다음 동작이 수행됩니다.

  • CHECK_EXPIRATION도 OFF로 설정됩니다.
  • 암호 기록이 삭제됩니다.
  • lockout_time 값이 다시 설정됩니다.

MUST_CHANGE를 지정한 경우에는 CHECK_EXPIRATION 및 CHECK_POLICY를 ON으로 설정해야 합니다. 그렇지 않으면 문이 실패합니다.

CHECK_POLICY를 OFF로 설정한 경우에는 CHECK_EXPIRATION을 ON으로 설정할 수 없습니다. 이 옵션 조합을 사용하면 ALTER LOGIN 문이 실패합니다.

ms189828.note(ko-kr,SQL.90).gif중요:
CHECK_EXPIRATION 및 CHECK_POLICY는 이상 버전에서만 적용됩니다. 자세한 내용은 암호 정책을 참조하십시오.
ms189828.note(ko-kr,SQL.90).gif중요:
에서 알려진 문제로 인해 계정 잠금 임계값에 도달한 후 잘못된 암호 수를 다시 설정하지 못할 수도 있습니다. 이 경우 후속 로그인 시도가 실패하면 즉시 잠금이 발생할 수 있습니다. 간단하게 CHECK_POLICY = ON 앞에 CHECK_POLICY = OFF를 설정하면 잘못된 암호 수를 수동으로 다시 설정할 수 있습니다. 계정 잠금 임계값에 대한 자세한 내용은 Microsoft 기술 자료 문서 818078: 사용자 계정이 잘못 잠길 수 있다를 참조하십시오.

ALTER_LOGIN에 DISABLE 인수를 사용하여 Windows 그룹에 대한 액세스를 거부할 수 없습니다. 예를 들어 ALTER_LOGIN [domain\group] DISABLE은 다음 오류 메시지를 반환합니다.

"메시지 15151, 수준 16, 상태 1, 줄 1"

"로그인 'Domain\Group'이(가) 없거나 권한이 없으므로 변경할 수 없습니다."

이것은 의도적인 것입니다.

사용 권한

ALTER ANY LOGIN 권한이 필요합니다.

CREDENTIAL 옵션을 사용하는 경우에는 ALTER ANY CREDENTIAL 권한도 필요합니다.

변경될 로그인이 CONTROL SERVER 권한의 피부여자인 경우에는 다음과 같은 변경을 수행할 때 CONTROL SERVER 권한도 필요합니다.

  • 이전 암호를 제공하지 않고 암호를 다시 설정
  • MUST_CHANGE, CHECK_POLICY 또는 CHECK_EXPIRATION 활성화
  • 로그인 이름 변경
  • 로그인 활성화 또는 비활성화
  • 로그인을 다른 자격 증명에 매핑

보안 주체는 자신이 소유하는 로그인의 암호, 기본 언어 및 기본 데이터베이스를 변경할 수 있습니다.

1. 비활성화된 로그인 활성화

다음 예에서는 Mary5 로그인을 활성화합니다.

ALTER LOGIN Mary5 ENABLE;

2. 로그인 암호 변경

다음 예에서는 Mary5의 암호를 변경합니다.

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

3. 로그인 이름 변경

다음 예에서는 Mary5 로그인의 이름을 Joe2로 변경합니다.

ALTER LOGIN Mary5 WITH NAME = Joe2;

4. 로그인을 자격 증명에 매핑

다음 예에서는 Joe2 로그인을 Custodian04 자격 증명에 매핑합니다.

ALTER LOGIN Joe2 WITH CREDENTIAL = Custodian04;

참고 항목

참조

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

관련 자료

자격 증명

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 12월 12일

새로운 내용
  • HASHED 인수에 대한 정보를 추가했습니다.
  • DISABLE 인수를 사용하여 Windows 그룹에 대한 액세스를 차단하는 방법에 대한 정보를 추가했습니다.