> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> EXECUTE AS 문에 대한 문서

# EXECUTE AS 문

export const CloudNotSupportedBadge = () => {
  return <div className="cloudNotSupportedBadge">
            <div className="cloudNotSupportedIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path strokeWidth="1.5" d="M6.33366 12.6666L12.3739 12.6667C13.6593 12.6667 14.7073 11.6187 14.7073 10.3334C14.7073 9.04804 13.6593 8.00003 12.3739 8.00003C12.3739 8.00003 12.3337 7.66659 12.0003 7.33325M10.667 5.33322C8.00033 2.33325 4.45395 4.78537 4.14195 6.68203C2.55728 6.7627 1.29395 8.06203 1.29395 9.6667C1.29395 11.3234 2.66699 12.6666 4.00033 12.6666" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.5" d="M2.66699 14L12.0003 4.66663" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>

        </div>
            Not supported in ClickHouse Cloud
        </div>;
};

다른 사용자 권한으로 쿼리를 실행할 수 있습니다.

<div id="syntax">
  ## 구문
</div>

```sql theme={null}
EXECUTE AS target_user;
EXECUTE AS target_user subquery;
```

첫 번째 형식(`subquery` 없음)은 현재 session에서 이후의 모든 쿼리가 지정된 `target_user` 권한으로 실행되도록 설정합니다.

두 번째 형식(`subquery` 포함)은 지정된 `subquery`만 지정된 `target_user` 권한으로 실행합니다.

두 형식이 모두 작동하려면 config setting `access_control_improvements.allow_impersonate_user`
이 `1`로 설정되어 있어야 하고, `IMPERSONATE` 권한이 부여되어 있어야 합니다. 예시로, 다음 명령은

```sql theme={null}
GRANT IMPERSONATE ON user1 TO user2;
GRANT IMPERSONATE ON * TO user3;
```

사용자 `user2`가 `EXECUTE AS user1 ...` 명령을 실행하도록 허용하고, 사용자 `user3`는 임의의 사용자로 명령을 실행하도록 허용합니다.

다른 사용자를 가장하는 경우 함수 [currentUser()](/ko/reference/functions/regular-functions/other-functions#currentUser)는 그 사용자의 이름을 반환하고,
함수 [authenticatedUser()](/ko/reference/functions/regular-functions/other-functions#authenticatedUser)는 실제로 인증된 사용자의 이름을 반환합니다.

<div id="examples">
  ## 예시
</div>

```sql theme={null}
SELECT currentUser(), authenticatedUser(); -- "default    default" 출력
CREATE USER james;
EXECUTE AS james SELECT currentUser(), authenticatedUser(); -- "james    default" 출력
```
