SET SESSION AUTHORIZATION — 세션 사용자 식별자와 현재 세션의 현재 사용자 식별자를 설정합니다.
스포츠 토토 [ 세션 | 로컬] 세션 승인사용자_이름스포츠 토토 [ 세션 | 로컬 ] 세션 승인 기본값
세션 승인 재스포츠 토토
  이 명령은 세션 사용자 식별자와 현재 SQL 세션의 현재 사용자 식별자를 다음과 같이 설정합니다.사용자_이름. 사용자 이름은 식별자 또는 문자열 리터럴로 기록될 수 있습니다. 예를 들어 이 명령을 사용하면 일시적으로 권한 없는 사용자가 되었다가 나중에 다시 슈퍼유저로 전환할 수 있습니다.
세션 사용자 식별자는 처음에 클라이언트가 제공한 (인증된) 사용자 이름으로 설정됩니다. 현재 사용자 식별자는 일반적으로 세션 사용자 식별자와 동일하지만 다음과 같은 상황에서 일시적으로 변경될 수 있습니다.보안 정의자기능 및 유사한 메커니즘; 다음으로 변경할 수도 있습니다.역할 스포츠 토토. 현재 사용자 식별자는 권한 확인과 관련이 있습니다.
세션 사용자 식별자는 초기 세션 사용자(인증된 사용자)에는 슈퍼유저 권한이 있었습니다. 그렇지 않으면 인증된 사용자 이름을 지정하는 경우에만 명령이 허용됩니다.
그세션그리고로컬수식자는 일반과 동일하게 작동합니다SET명령.
그기본값그리고리셋양식은 세션 및 현재 사용자 식별자를 원래 인증된 사용자 이름으로 재설정합니다. 이 양식은 모든 사용자가 실행할 수 있습니다.
세션 승인 스포츠 토토a 내에서는 사용할 수 없습니다.보안 정의자함수.
세션_사용자 선택, CURRENT_USER; 세션_사용자 | 현재_사용자 ------------+--------------- 피터 | 피터 세션 권한 설정 'paul'; SESSION_USER, CURRENT_USER 선택; 세션_사용자 | 현재_사용자 ------------+--------------- 폴 | 폴
SQL 표준에서는 리터럴 대신 다른 표현식이 나타날 수 있도록 허용합니다.사용자_이름, 그러나 이러한 옵션은 실제로 중요하지 않습니다.PostgreSQL식별자 구문 허용("), SQL에서는 그렇지 않습니다. SQL은 트랜잭션 중에 이 명령을 허용하지 않습니다.포스트그레SQL이유가 없기 때문에 이 제한을 두지 않습니다.사용자 이름"세션그리고로컬수식자는 aPostgreSQL확장, 그대로리셋구문.
이 명령을 실행하는 데 필요한 권한은 표준에 따라 구현 정의되어 있습니다.