ablog

不器用で落着きのない技術者のメモ

Redshift でユーザーに CREATE SCEMA 権限を付与する

Redshift でユーザーに CREATE SCEMA 権限を付与するには、CREATE SCEMA 権限を持つ Role を作成して、ユーザーに Role を付与する。

$ psql -a "host=redshift-cluster-poc-ads.********.ap-northeast-1.redshift.amazonaws.com user=awsuser dbname=sampledb port=5439"

psql (14.3, server 8.0.2)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

-- 管理ユーザー用 Role を作成する
sampledb=# create role dm_admin_role;
CREATE ROLE
-- 管理ユーザー用 Role に権限を付与する
sampledb=# grant create schema to role dm_admin_role;
GRANT
sampledb=# grant create user to role dm_admin_role;
GRANT
-- 管理ユーザーを作成して、Role を付与する
sampledb=# create user dm_admin_user password 'Password1';
CREATE USER
sampledb=# grant role dm_admin_role to dm_admin_user;
GRANT