CREATE USER MAPPING
CREATE USER MAPPING
외부 서버(FDW)로 데이터를 읽으려면, 그 서버에 어떤 사용자로 접속할지를 정해야 해요. CREATE USER MAPPING이 사용자를 외부 서버에 매핑하는 명령이에요. 사용자 매핑은 보통 외부 데이터 래퍼가 외부 데이터 리소스에 접근할 때, 외부 서버가 담은 정보와 함께 사용하는 연결 정보를 캡슐화해요.
외부 서버의 소유자는 그 서버에 어느 사용자에 대해서든 사용자 매핑을 만들 수 있어요. 또한 사용자에게 서버에 대한 USAGE 권한이 부여되어 있으면, 사용자 자신의 사용자 이름에 대한 사용자 매핑을 만들 수 있어요.
출처: PostgreSQL 문서
본문
Synopsis
CREATE USER MAPPING [ IF NOT EXISTS ] FOR { user_name | USER | CURRENT_ROLE | CURRENT_USER | PUBLIC }
SERVER server_name
[ OPTIONS ( option 'value' [ , ... ] ) ]
Description
CREATE USER MAPPING은 사용자를 외부 서버에 매핑하는 것을 정의해요. 사용자 매핑은 보통 외부 데이터 래퍼가 외부 데이터 리소스에 접근할 때, 외부 서버가 캡슐화한 정보와 함께 사용하는 연결 정보를 캡슐화해요.
외부 서버의 소유자는 그 서버에 대해 어느 사용자를 위한 것이든 사용자 매핑을 만들 수 있어요. 또한 사용자에게 서버에 대한 USAGE 권한이 부여되어 있으면, 사용자 자신의 사용자 이름에 대한 사용자 매핑을 만들 수 있어요.
Parameters
IF NOT EXISTS
주어진 사용자에 대해 주어진 외부 서버로의 매핑이 이미 있어도 오류를 내지 않아요. 이 경우 통지가 발생해요. 기존 사용자 매핑이 만들려던 것과 비슷하다는 보장은 없다는 점을 유의하세요.
user_name
외부 서버에 매핑되는 기존 사용자의 이름이에요. CURRENT_ROLE, CURRENT_USER, USER는 현재 사용자의 이름과 일치해요. PUBLIC을 지정하면, 사용자별 매핑이 적용되지 않을 때 사용되는 이른바 공용(public) 매핑이 만들어져요.
server_name
사용자 매핑을 만들 기존 서버의 이름이에요.
OPTIONS ( option 'value' [, ... ] )
이 절은 사용자 매핑의 옵션을 지정해요. 옵션은 보통 매핑의 실제 사용자 이름과 비밀번호를 정의해요. 옵션 이름은 고유해야 해요. 허용되는 옵션 이름과 값은 서버의 외부 데이터 래퍼에 특화돼 있어요.
Examples
사용자 bob, 서버 foo에 대한 사용자 매핑을 만들어 볼게요.
CREATE USER MAPPING FOR bob SERVER foo OPTIONS (user 'bob', password 'secret');
Compatibility
CREATE USER MAPPING은 ISO/IEC 9075-9(SQL/MED)를 따르는 편이에요.
더 알아보기 (Learn more)
ALTER USER MAPPING— 사용자 매핑의 옵션을 바꿀 때 써요.DROP USER MAPPING— 사용자 매핑을 삭제할 때 써요.CREATE FOREIGN DATA WRAPPER— 외부 데이터 래퍼를 만들 때 써요.- Foreign Data — 외부 데이터 접근을 다루는 섹션이에요.