ユーザーごとにアクセス可能なスキーマを限定する
Redshiftでは、アクセスさせたいユーザーだけにスキーマへの権限を与えることで、アクセス可能なスキーマを限定することができます。
※本記事は、2017/2/25時点の情報です。
GRANT ALL ON SCHEMA schema1 TO user1 -- user1にschema1 へのアクセス権限を与える
user1は、schema1のcustomerを参照できる。
- SQL
SELECT c_custkey FROM schema1.customer;
- 結果
SELECT executed successfully
user1は、schema2のcustomerは参照できない。
- SQL
SELECT c_custkey FROM schema2.customer;
- 結果
[Amazon](500310) Invalid operation: permission denied for schema schema2;
スキーマをまたいだJOIN
参照権限があれば、スキーマをまたいでJOINすることができます。
- SQL
SELECT c1.c_custkey FROM schema1.customer c1 INNER JOIN schema2.customer c2 ON c1.c_custkey = c2.c_custkey
- 結果
SELECT executed successfully