❄️
【Snowflake】Firewallのホワイトリスト設定とProxy越しに接続する方法 (SiSにはどうやら専用ドメイン有り)
本記事で参考になるケース
- Firewallにてホワイトリストに登録が必要等
- SnowflakeへProxy越しに接続したい
記事の概要
- FirewallやProxy(aws network firewall やSquid等)越しにSnowflakeに接続したい
方法
- snowflake接続に必要なホスト名とポート情報を取得
USE ROLE SECURITYADMIN;
SYSTEM$ALLOWLIST()
出力されるホスト例
アカウント識別子.ap-northeast-1.aws.snowflakecomputing.com
組織名-アカウント名.snowflakecomputing.com
sfc-jp-ds1-9-customer-stage.s3.amazonaws.com
sfc-jp-ds1-9-customer-stage.s3.ap-northeast-1.amazonaws.com
sfc-jp-ds1-9-customer-stage.s3-ap-northeast-1.amazonaws.com
sfc-repo.snowflakecomputing.com
client-telemetry.snowflakecomputing.com
ocsp.snowflakecomputing.com
api-XXXXXX.duosecurity.com
組織名-アカウント名.registry.snowflakecomputing.com
組織名-アカウント名.registry.snowflakecomputing.com
o.ss2.us
ocsp.r2m01.amazontrust.com
ocsp.r2m02.amazontrust.com
ocsp.rootg2.amazontrust.com
ocsp.rootca1.amazontrust.com
apps-api.c1.ap-northeast-1.aws.app.snowflake.com
app.snowflake.com
注意!! Streamlit(SiS)をお使いの方 202405現在
*.snowflake.app
どうやら上記もSiS利用時には開ける必要があるっぽい.
注意が必要なのが、「-」と「.」で微妙にURLが異なる場合があること
時々ホストが増えます、特に新サービス追加時にホストに変化がある場合がありますので新サービス利用時に接続ができない or 立ち上がらない等ありましたら要確認です.
- ホスト名、ポート情報をもとにFirewallやProxyのホワイトリストに設定
出力された情報をホワイトリストに登録する
場合によっては*.snowflakecomputing.com
等で登録すると登録数が減るが、当然ながら無関係のSnowflakeアカウントへの接続も許容してしまうかもしれないのでご注意を.
Proxy越しにWebブラウザからSnowsightへ接続
Proxy情報をPCに設定する
※注意
Google ChromeやWindows Edgeなどがあるが、大抵これらのブラウザは基本的にPC自体のプロキシ設定をもとに接続先を変更する. この場合,Proxyを通したくない他の通信に影響が出ることが予想される.
もちろんやりようはあるが、ブラウザ単位でProxyの設定ができるFirefoxなどはちょっとした検証に使うにはおすすめ.
FirefoxのProxy設定
Proxy越しにdriver, snowsql から接続
環境変数にProxyの情報を設定しましょう
>export HTTP_PROXY=http://proxy:3128
>export HTTPS_PROXY=http://proxy:3128
>snowsql ....
Python接続の場合
import snowflake.connector
import os
os.environ["http_proxy"] = 'http://proxy:3128'
os.environ["https_proxy"] = 'http://proxy:3128'
conn =snowflake.connector.connect(
user="XXXXXXX",
password="XXXXXXX",
account="組織名-アカウント名",
warehouse="XXXXXXXX",
database="XXXXXXXX",
role="XXXXXXXX"
)
conn.cursor().execute("SELECT 1;")
Snowlfake データクラウドのユーザ会 SnowVillage のメンバーで運営しています。 Publication参加方法はこちらをご参照ください。 zenn.dev/dataheroes/articles/db5da0959b4bdd
Discussion