Snowflake Integration
はじめに
Attribute プラットフォームは、さまざまなサードパーティのクラウドサービスと連携することで、コストの一元的な可視化と完全なコストアトリビューションを実現できます。
本ドキュメントでは、Snowflake の請求情報と連携を完了するために必要な手順について説明します。
必要条件
組織全体の詳細な情報を提供するために、Attribute は[organization account]へのアクセスを必要とします。
このアクセスを安全に取得するために、以下が必要です。
- 認証用の RSA キーペア
- 業務オペレーションへの影響を避けるための専用 warehouse
- 必要なすべての権限をまとめるための新しい role
- 新しい role に対する必要な権限の付与
- 新しい warehouse への [USAGE] 権限
- organization account への [ORG_USAGE_ADMIN] application role
- ユーザーアクセスを保護するための network policy
- 新しい role と network policy が割り当てられた新規サービスユーザー
連携手順
- openssl を使用した RSA キーペアの生成
- 既存の organization account を使用した連携
- 新しい organization account の作成
すべての Snowflake SQL コマンドは、Snowflake の UI Web インターフェースである Snowsight の worksheet から実行できます。

1. 新しい RSA キーペアの生成
以下の手順では、新しい RSA キーペアを作成し、Snowflake で必要な形式に変換する方法を説明します。
1.1. openssl が利用可能なコマンドシェルを開きます。
1.2. 次のコマンドを使用して、新しい秘密鍵 (key.p8) を生成します。十分に強力なパスフレーズを選択してください。
openssl genrsa 2048 | openssl pkcs8 -topk8 -v2 des3 -inform PEM -out key.p8
1.3 次のコマンドを使用して公開鍵 (key.pub) を生成します。1.2 の手順で生成した秘密鍵を必ず使用してください。
秘密鍵を作成した際に使用したパスフレーズを指定してください。
openssl rsa -in key.p8 -pubout -out key.pub
公開鍵 key.pub は、次のような形式になります。

1.4. 公開鍵の形式を Snowflake の要件に合わせて変換します。
Snowflake で公開鍵を使用するには、区切り文字と改行を削除する必要があります。次のコマンドを使用して、公開鍵 (key.pub) を Snowflake 用形式に変換してください。
sed '1d;$d' key.pub | tr -d '\n' > key.snowflake.pub
新しいユーザーを作成する際に、公開鍵 key.snowflake.pub を使用します。
新しいユーザーでログインできるようにするには、以下が必要です。
- 秘密鍵
- 秘密鍵用に設定したパスフレーズ