Architect's Log

I'm a Cloud Architect. I'm highly motivated to reduce toils with driving DevOps.

【AWS】Redshiftのスキーマと権限

ユーザーごとにアクセス可能なスキーマを限定する

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