Documentation Index
Fetch the complete documentation index at: https://domoinc-arun-raj-connectors-domo-480626-update-new-field-mi.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
はじめに
Snowflake Key Pair Authentication Writebackコネクターを使用すると、すべてのデータをDomoに格納して正規化した後にSnowflakeに送り返し、同時にクエリでもそれを利用可能にすることが簡単になります。データウェアハウジングソリューションとして既にSnowflakeを使用している場合、このコネクターは、SnowflakeとDomoを併用してデータを最大限に活用するために役立ちます。このコネクターを使用するには、Snowflakeアカウント名、Snowflakeホストへの接続に使用しているユーザー名、シークレットキー、パスフレーズ、およびDomoデベロッパーアカウントの認証情報(クライアントIDとクライアントシークレット)が必要になります。DomoのSnowflake Key Pair Authentication Writebackコネクターを使用すると、DomoのDataSetからSnowflakeアカウントにデータをエクスポートできます。Snowflake APIの詳細については、https://docs.snowflake.com/jaにアクセスしてください。 このトピックでは、Snowflake Key Pair Authentication Writebackコネクターのユーザーインターフェースに固有のフィールドとメニューについて説明します。DataSetの追加や更新スケジュールの設定、DataSet情報の編集に関する一般的な情報は、「コネクターを使用してDataSetを追加する」を参照してください。**注記:**Writeback DataSetの所有者は、入力DataSetの所有者または共同所有者である必要があります。
必要条件
Snowflakeデータベースに接続し、DataSetを作成するには、以下が必要です。- アカウントのフルネーム(Snowflakeが提供)。これは、Snowflake URLのhttps://の直後に続く部分です。 アカウントのフルネームには、アカウントがホストされる地域とクラウドプラットフォームを識別する追加のセグメントが含まれる場合があることに注意してください。米国西部地域はaccount_name、その他の地域はaccount_name.region_idです。以下の表に、クラウドプラットフォームまたは地域別のアカウント名の例を示します。各行では、アカウント名が「xy12345」であると仮定しています。

- Snowflakeホストへの接続に使用するユーザー名。
- シークレットキー。
- パスフレーズ。シークレットキーを暗号化する場合、OpenSSLが、シークレットキーファイルの暗号化に使用されるパスフレーズの入力を求めてきます。
パブリック/シークレットキーペアを設定する
パブリック/シークレットキーペアを設定するには、以下のステップに従ってください。-
ターミナルウィンドウのコマンドラインからシークレットキーを生成します。
シークレットキーの暗号化バージョンも、シークレットキーの暗号化されていないバージョンも生成できます。
-
暗号化されていないバージョンを生成するには、以下のコマンドを使用します。
$ openssl genrsa -out rsa_key.pem 2048 -
暗号化されたバージョンを生成するには、以下のコマンドを使用します。
$ openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8通常、暗号化されたバージョンを生成する方が安全です。 2番目のコマンドを使用してシークレットキーを暗号化する場合、OpenSSLが、シークレットキーファイルの暗号化に使用されるパスフレーズの入力を求めてきます。シークレットキーを保護するために強力なパスフレーズを使用することを推奨します。このパスフレーズを安全な場所に記録します。Snowflakeに接続するときにパスフレーズを入力します。パスフレーズはシークレットキーの保護にのみ使用され、Snowflakeに送信されることはないことに注意してください。 PEMシークレットキーの例を以下に示します。-----BEGIN ENCRYPTED PRIVATE KEY----- MIIE6TAbBgkqhkiG9w0BBQMwDgQILYPyCppzOwECAggABIIEyLiGSpeeGSe3xHP1 wHLjfCYycUPennlX2bd8yX8xOxGSGfvB+99+PmSlex0FmY9ov1J8H1H9Y3lMWXbL ... -----END ENCRYPTED PRIVATE KEY-----
-
暗号化されていないバージョンを生成するには、以下のコマンドを使用します。
-
コマンドラインからシークレットキーを参照してパブリックキーを生成します。シークレットキーが暗号化され、「rsa_key.p8」という名前のファイルに含まれていると仮定して、次のコマンドを使用します。
$ openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub以下がPEMパブリックキーのサンプルです。-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy+Fw2qv4Roud3l6tjPH4 zxybHjmZ5rhtCz9jppCV8UTWvEXxa88IGRIHbJ/PwKW/mR8LXdfI7l/9vCMXX4mk ... -----END PUBLIC KEY----- - パブリックキーファイルとシークレットキーファイルをローカルディレクトリにコピーして保存します。ファイルのパスを記録します。シークレットキーはPKCS#8(公開鍵暗号標準)フォーマットを使用して保存され、前のステップで指定したパスフレーズで暗号化されることに注意してください。ただし、OSが提供するファイル許可機構を使用して、ファイルを不正アクセスから保護する必要があります。使用されていないときにファイルをセキュリティ保護するのはユーザーの責任です。
-
ALTER USERを使用して、Snowflakeユーザーにパブリックキーを割り当てます。例:
alter user jsmith set rsa_public_key='MIIBIjANBgkqh...';
注記:
- セキュリティ管理者(つまりSECURITYADMIN権限を持つユーザー)以上がユーザーを変更できます。
- SQLステートメント内のパブリックキーヘッダーとフッターを除外します。
-
DESCRIBEUSERを使用してユーザーのパブリックキーの指紋を確認します。
プロパティ 値 デフォルト 説明 名前 JSMITH NULL値 名前 RSA_PUBLIC_KEY_FP SHA256:nvnONUsfiuycCLMXIEWG4eTp4FjhVUZQUQbNpbSHXiA= NULL値 ユーザーのRSAパブリックキーの指紋。 RSA_PUBLIC_KEY_2_FP NULL値 NULL値 ユーザーの2番目のRSAパブリックキーの指紋。
**注記:**RSA_PUBLIC_KEY_2_FPプロパティの詳細については、「キーローテーション」を参照してください。
6. 下のサンプルコードを修正して実行します。このコードはシークレットキーファイルを復号してSnowflakeドライバーに渡し、接続を作成します。
- セキュリティパラメーターを更新:
- <path>は作成したシークレットキーファイルへのローカルパスを指定します。
- セッションのパラメーターを更新:
- <user>はSnowflakeログイン名を指定します。
- <account>はアカウントの名前(Snowflakeが提供)を指定します。
- サンプルコードは以下のとおりです。
キーローテーション
Snowflakeは、中断しないローテーションができるように、複数のアクティブキーをサポートします。内部で従っている有効期限スケジュールにもとづき、パブリックキーとシークレットキーをローテーションし、置換します。 現在、ALTER USERではRSA_PUBLIC_KEYとRSA_PUBLIC_KEY_2のパラメーターを使用して、最大2つのパブリックキーを1人のユーザーに関連付けることができます。 キーのローテーションを行うには:-
キーペア認証の使用のステップを完了します。
- 新しいシークレットキーとパブリックキーのセットを生成します。
-
ユーザーにパブリックキーを割り当てます。パブリックキーの値をRSA_PUBLIC_KEYまたはRSA_PUBLIC_KEY_2のいずれか(現在使用していないキーの値)に設定します。
例:
alter user jsmis set rsa_public_key_2='JERUE Htcve...';
- コードを更新してSnowflakeに接続します。新しいシークレットキーを指定します。 Snowflakeは、接続情報とともに送信されたシークレットキーにもとづいて、認証用の正しいアクティブなパブリックキーを検証します。
-
ユーザープロフィールから古いパブリックキーを削除します。例:
alter user jsmith unset rsa_public_key;
接続を設定する
このセクションでは、Snowflake Key Pair Authentication Writebackコネクターページの**[認証情報]ペインと[詳細]ペインのオプションについて説明します。このページのほかのペインの項目である[スケジュール設定]や[DataSetに名前を付け、説明を入力]**に関しては、ほとんどのタイプのコネクターで共通しています。詳細については、「コネクターを使用してDataSetを追加する」を参照してください。[認証情報]ペイン
このペインには、DomoデベロッパーアカウントとSnowflakeアカウントの認証情報を入力するフィールドがあります。以下の表は、各フィールドに必要な内容を説明しています。| フィールド | 説明 |
|---|---|
| Account Name | アカウントのフルネーム(Snowflakeが提供)を入力します。米国西部地域はaccount_name、その他の全地域はaccount_name.region_idです。 |
| Username | Snowflakeホストへの接続に使用するユーザー名を入力します。 |
| Private Key | シークレットキーを入力します。 |
| Passphrase | シークレットキーを暗号化する場合、OpenSSLが、シークレットキーファイルの暗号化に使用されるパスフレーズの入力を求めてきます。パスフレーズをここに入力します。 |
| Role | 権限を入力します。 |
[詳細]ペイン
このペインには、メインとなる**[Reports]**メニューのほか、選択したレポートタイプに応じて表示/非表示になる様々なメニューが含まれています。| メニュー | 説明 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Input DataSet ID | SnowflakeにコピーするDataSetのDataSet ID(GUID)を入力します。Data CenterでDataSetの詳細ビューを開き、URLの「datasources/」に続く部分でIDを見つけることができます。例えば、URLがhttps://mycompany.domo.com/datasources/845305d8-da3d-4107-a9d6-13ef3f86d4a4/details/overviewであれば、DataSet IDは「845305d8-da3d-4107-a9d6-13ef3f86d4a4」になります。 | ||||||||
| Select Table Name | データがコピーされるテーブルの命名方法を選択します。 - 入力DataSet GUIDを使用する。テーブルの名前は、[Input DataSet ID]に入力した番号になります。 - テーブルの名前を入力する。[Enter Table Name] フィールドにテーブルのカスタム名を入力します。 | ||||||||
| Enter Table Name | データをコピーするSnowflakeテーブルの名前を入力します(スペースや特殊文字はアンダースコアに置き換えられます)。 | ||||||||
| Warehouses | ウェアハウスを選択します。 | ||||||||
| Databases | データベースを選択します。 | ||||||||
| Database Schema | スキーマを選択します。 | ||||||||
| Use All Caps for Column Names and Table Name | 列名とテーブル名がすべて大文字で書き戻されます。そのため、Snowflakeでは大文字と小文字の区別がありません。 | ||||||||
How do you want to update your data in snowflake?
| |||||||||
| Choose the Escape character | 入力データセットのエスケープ文字を選択します。 |
よくある質問
このコネクターはいつ使用しますか?
このコネクターはいつ使用しますか?
このコネクターを使用すると、ローカルのユーザー名とシークレットキーを使って、データをDomo DataSetからSnowflakeインスタンスに書き込めます。
Snowflakeではどの権限が必要ですか?
Snowflakeではどの権限が必要ですか?
Snowflakeでは、CREATE TABLE、COPY INTO、PUT、CREATE FILE FORMAT、REMOVE、LISTの権限が必要です。
このコネクターを起動するにはどのような認証情報が必要ですか?
このコネクターを起動するにはどのような認証情報が必要ですか?
アカウント名(Snowflakeが提供)、Snowflakeのユーザー名、シークレットキーが必要です。暗号化されたシークレットキーを作成する場合は、シークレットキーファイルの暗号化に使用されるパスフレーズが必要になります。自分の権限名を入力することもできます。
データはどれくらいの頻度で更新されますか?
データはどれくらいの頻度で更新されますか?
必要に応じた頻度で行われます。
注意すべきAPI制限はありますか?
注意すべきAPI制限はありますか?
制限は使用するサーバー構成によって異なります。
同じアカウントを使用して複数のDataSetを作成することはできますか?
同じアカウントを使用して複数のDataSetを作成することはできますか?
はい。
Snowflakeデータベースに接続できない理由は何ですか?IPアドレスのホワイトリスト登録が必要でしょうか?
Snowflakeデータベースに接続できない理由は何ですか?IPアドレスのホワイトリスト登録が必要でしょうか?
Snowflakeデータベースに接続する前に、接続するポート上のデータベースサーバーにあるいくつかのIPアドレスをホワイトリストに登録する必要があります。IPアドレスの詳細なリストは、「 ネットワーク接続にDomoのIPアドレスを許可する」を参照してください。
入力DataSet IDはどのように見つけられますか?
入力DataSet IDはどのように見つけられますか?
Domoの入力DataSet IDは、データのエクスポート元となるDataSetのURLで見つけられます。例:
https://customer.domo.com/datasources/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/details/settings