ALTER USER를 사용하려면 ALTER USER 권한이 필요합니다.
GRANTEES 절
GRANTEES 절의 옵션은 다음과 같습니다.
user— 이 사용자가 권한을 부여할 수 있는 사용자를 지정합니다.role— 이 사용자가 권한을 부여할 수 있는 역할을 지정합니다.ANY— 이 사용자는 누구에게나 권한을 부여할 수 있습니다. 기본 설정입니다.NONE— 이 사용자는 누구에게도 권한을 부여할 수 없습니다.
EXCEPT 표현식을 사용하면 특정 사용자나 역할을 제외할 수 있습니다. 예를 들어 ALTER USER user1 GRANTEES ANY EXCEPT user2는 user1이 GRANT OPTION과 함께 일부 권한을 부여받은 경우, user2를 제외한 누구에게나 해당 권한을 부여할 수 있음을 의미합니다.
예시
role1 및 role2를 제외하고 할당된 모든 역할을 기본 역할로 설정하세요:
john 계정의 사용자가 자신의 권한을 jack 계정의 사용자에게 부여할 수 있도록 합니다:
- 이전 버전의 ClickHouse는 여러 인증 메서드 구문을 지원하지 않을 수 있습니다. 따라서 ClickHouse 서버에 이러한 사용자가 있는 상태에서 이를 지원하지 않는 버전으로 다운그레이드하면 해당 사용자는 더 이상 사용할 수 없게 되며, 일부 사용자 관련 작업도 정상적으로 동작하지 않게 됩니다. 다운그레이드를 안전하게 수행하려면, 다운그레이드 전에 모든 사용자가 단일 인증 메서드만 사용하도록 설정해야 합니다. 또는 적절한 절차 없이 서버를 다운그레이드한 경우 문제가 있는 사용자를 삭제해야 합니다.
- 보안상의 이유로
no_password는 다른 인증 메서드와 함께 사용할 수 없습니다. 따라서no_password인증 메서드는ADD할 수 없습니다. 아래 쿼리는 오류를 발생시킵니다:
no_password만 사용하려면 아래의 대체 구문으로 지정해야 합니다.
인증 메서드를 재설정하고 쿼리에 지정된 메서드를 추가합니다(ADD 키워드 없이 앞에 오는 IDENTIFIED와 동일한 효과):
VALID UNTIL 절
YYYY-MM-DD [hh:mm:ss] [timezone] 포맷을 사용하는 것이 좋습니다. 기본적으로 이 매개변수의 값은 'infinity'입니다.
VALID UNTIL 절은 쿼리에 인증 메서드가 지정되지 않은 경우를 제외하면 인증 메서드와 함께만 지정할 수 있습니다. 이 경우 VALID UNTIL 절은 기존의 모든 인증 메서드에 적용됩니다.
예시:
ALTER USER name1 VALID UNTIL '2025-01-01'ALTER USER name1 VALID UNTIL '2025-01-01 12:00:00 UTC'ALTER USER name1 VALID UNTIL 'infinity'ALTER USER name1 IDENTIFIED WITH plaintext_password BY 'no_expiration', bcrypt_password BY 'expiration_set' VALID UNTIL'2025-01-01''