Snowflakeのパスワード認証終了にどう備えるべきか?Redash接続のマイベストプラクティス
背景
Snowflake において パスワード単体での認証が非推奨となり、将来的にサポートが廃止される ことが発表されました。
これを受け、弊社が運用する Redash 環境でも、Snowflake との接続方式を見直す必要が出てきました。
しかし、Redash は RSA 公開鍵認証などに対応しておらず、選択肢は限られています。そこで今回は、Snowflake の PAT(Programmatic Access Token)認証を用いた接続へと移行しました。
本記事では、Redash における PAT 認証の導入手順と、その際に考慮したポイントを紹介します。
なお、ここで紹介する方法は 弊社(シロク)のデータ基盤に最適化された一例です。Redash のパスワード認証見直しでお困りの方にとって、少しでも参考になれば幸いです。
また、別アプローチとして Key-Pair 認証を Redash に対応させる方法も存在します。詳細は、シンプルフォーム 山岸さんによる以下の記事をご参照ください。
PAT(Programmatic Access Token)認証とは?
2025年4月末にSnowflake に新しく追加された認証方式で、パスワードではなくトークンを使用してプログラム的な接続を行う仕組みです。最大 365 日の有効期限があり、ユーザー単位で発行・制御が可能です。
今回、Redashでサービスユーザーを作成し、パスワード認証のものをPATに認証することで、接続方式を移行することが可能だと考えました。
1. Snowflake における Network Policy の設定
PAT を有効にするには、Snowflake にアクセスするクライアントの IP アドレスを明示的に許可する必要があります。
CREATE NETWORK POLICY allow_redash_public_policy
ALLOWED_IP_LIST = ('19X.XXX.0.1');
DESC NETWORK POLICY allow_redash_public_policy;
Redash 用のサービスユーザーを作成し、このポリシーを適用します。
CREATE USER TEST
TYPE = SERVICE
DEFAULT_ROLE = PUBLIC;
ALTER USER TEST
SET NETWORK_POLICY = allow_redash_public_policy;
2. PATトークンの発行と適用
Snowflake UI の User & Roles
画面にアクセスし、対象ユーザーの詳細を確認します。
「Missing network policy」の警告が表示されていないことを確認し、「Generate new Token」から PAT を作成します。
トークンは一度しか表示されないため、コピーを行い、機密性の高い管理ツールに保管をしてください。
3. Redash 側の設定を PAT 認証に切り替える
Redash 管理画面にログインし、以下の手順で設定を更新します。
- メニューから
Settings → Data Sources
を開く - Snowflake のデータソースを選択
- 以下の内容を入力
項目 | 設定内容 |
---|---|
Username | Snowflake のサービスユーザー名 |
Password | 発行済みの PAT トークン文字列 |
Role | ユーザーに割り当てたロール名(例:PUBLIC) |
Data | 従来どおり(Warehouse、Database、Schemaなど) |
- 「Test Connection」をクリックし、接続テストを実施
おわりに
Snowflake の認証方式変更は、セキュリティ強化のための前向きな施策ですが、運用現場では影響が大きく、Redash のように対応が限定されているツールとの接続には工夫が必要です。
今回の PAT 認証への移行により、Redash との接続をセキュアに保ちながら、将来的な MFA 義務化にも備えることができました。
本記事が、同様の課題を抱える方々のヒントとなれば幸いです。
参考リンク
- Snowflake Terraform Provider –
network_policy
- Snowflake Docs – Programmatic Access Tokens
- Redash の Snowflake データソースを Key-Pair 認証に対応させてみた

「N organic」、「FAS」等の化粧品ブランドを展開している株式会社シロクのエンジニアブログです。 ECサイトを中心とした自社サービスの開発・運用を行っています。 sirok.jp/norganic
Discussion