【PowerBI】PowerBIDesktopからSnowflakeにKeypairで接続する方法

Power BI DesktopからSnowflakeにKeypairで接続する方法

こんにちはMJです!

Snowflakeを連動させる際、セキュリティ強化のためにKey Pair認証を考慮する方が多いと思います。

いつの間にかPower BI Desktop(2025年11月バージョン)において、SnowflakeへのKey Pair認証がサポートされ始めました。

しかし現時点(2025.11.21)では、Microsoft公式ドキュメントに本機能に関する詳細な情報がまだ掲載されていません。

本記事ではKey Pairの生成から専用ユーザーの追加、権限付与、そしてPower BI Desktopでの接続設定までまとめてご紹介します。

最新バージョンのPower BI Desktopはここからダウンロードしてください。

 

Key Pair(Private Key/Public Key)生成

SnowflakeのKey Pair認証を利用するには、最初にPrivate KeyとPublic Keyを生成します。

一般的にはOpenSSLでの生成が最も広く利用されています。

Private Key生成

コマンドプロンプトを開き、以下のコマンドを入力して 2048 ビット RSA秘密キーを生成します。

openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt

生成された秘密キー例

-----BEGIN PRIVATE KEY-----
MIIEv..........
-----END PRIVATE KEY-----

 

Public Key生成

生成された秘密キーからペアになる公開キーを抽出します。

openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub

生成された公開キー例

-----BEGIN PUBLIC KEY-----
MIIBI.....
-----END PUBLIC KEY-----

 

Key Pair認証用のSnowflakeユーザー作成

一般的にKey Pair認証は、人のユーザーよりもサービスアカウント(Service Account)の形で運営する場合が多いです。

SnowflakeでServiceユーザー作成

以下の画像はServiceアカウントを作成例です。

Public Keyはヘッダーとフッター(-----BEGIN PUBLIC KEY-----, -----END PUBLIC KEY-----のような行)と改行を削除した文字列を入力します。

問題なければ以下の画面が表示されます。

アカウントに必要なロール付与

ユーザーを生成した場合は、Power BIでデータを照会できるように適切なロールを付与する必要があります。

 

Power BI DesktopからSnowflakeへ接続

Power BI DesktopのSnowflakeコネクションを選択するとアカウントURLとウェアハウスの情報が必要です。

アカウントURLコピー

左下のユーザー名にマウスオーバーし、Accountから青文字の「View account details」を選択します。

Account/Server URLの値をコピーします。

Snowflakeの接続情報を入力

先ほどコピーしたアカウントURLをServer欄に入力し、処理に使うウェアハウスをWarehouse欄に入力します。

そうしますと、左の認証方式からKeyPairを選択します。

usenameには作成したServiceアカウントの名前を入力します。

秘密キーは公開キーと違ってヘッダーとフッター(-----BEGIN PRIVATE KEY-----, -----END PRIVATE KEY-----のような行)と改行を含めてそのままコピーし、そのまま貼り付けて入力します。

接続に問題がなければ、付与されたロールでアクセス可能なデータが表示されます。

データを読み込みする時「インポート、Directquery」両方使うことができました。

 

まとめ

いよいよPower BI DesktopでSnowflakeのKey Pair認証が利用可能になったことで、セキュリティと運用効率を両立できる接続選択肢ができました。

現時点では公式ガイドが未整備のため、今後の更新を注視しながら運用することが重要です。

 

 

BI製品のサポートはぜひKCMEで!

自然言語を使って簡単にデータの可視化ができるBIツール、ThoughtSpotの詳細はこちら

おすすめの記事