はい、TROCCOのSnowflake接続情報でプログラムによるアクセストークン認証 (PAT) を利用できます。
TROCCOでの設定手順
- TROCCOのSnowflake接続情報の作成・編集画面を開く
- 「認証方式」で「プログラムによるアクセストークン認証」を選択する
- 「プログラムによるアクセストークン」にSnowflakeで発行したトークンを入力する
※ プログラムによるアクセストークンには有効期限があります (最大365日)。定期的なローテーションが必要です。トークンはSnowflakeアカウントで管理してください。
(参考)Using programmatic access tokens for authentication
Snowflake側の設定
サービスユーザーの作成
TYPE = SERVICE のサービスユーザーを使うことを推奨します。サービスユーザーはパスワード認証が無効なため、PATによる認証に適しています。
-
default_warehouseの設定は必須 -
default_roleは必須ではありませんが、運用上は設定しておくことを推奨
-- サービスユーザー作成
create or replace user ユーザー名
type = service
default_warehouse = 'ウェアハウス名'
default_role = public;
ロールの作成・権限付与
PATはユーザーではなくロールに対して制御されるため、ユーザーにロールを割り当てます。
-- 接続用ロール作成
create or replace role ロール名;
-- ロールをユーザー・SYSADMINに付与
grant role ロール名 to user ユーザー名;
grant role ロール名 to role sysadmin;
-- データベース権限
grant all on database データベース名 to role ロール名;
-- ウェアハウス権限
grant usage, operate on warehouse ウェアハウス名 to role ロール名;
ネットワークポリシーの設定
TROCCOからの接続を許可するため、IPアドレスの許可設定が必要です。
-- ネットワークポリシー作成
create network policy if not exists ポリシー名
allowed_ip_list = ('18.182.232.211', '13.231.52.164', '3.113.216.138', '57.181.137.181', '54.250.45.100');
-- ユーザーにポリシーを適用
alter user ユーザー名 set network_policy = ポリシー名;
PATの発行
-- PAT発行(ロール制限あり)
alter user ユーザー名 add programmatic access token トークン名
role_restriction = 'ロール名'
days_to_expiry = 365;
-- 期限切れや再発行時は remove して再作成
alter user ユーザー名 remove programmatic access token トークン名;
認証ポリシー(任意)
authentication policy を作成することで、利用可能な認証方式を制限できます。
-- PAT認証のみに絞る場合
create or replace authentication policy test_auth
authentication_methods = (
'programmatic_access_token'
);
alter user ユーザー名 set authentication_policy = test_auth;
コメント
0件のコメント
記事コメントは受け付けていません。