Snowflakeの Tri-Secret Secure の理解

Tri-Secret Secure は、Snowflakeアカウントをホストするクラウドプロバイダープラットフォームで、Snowflakeが管理するキーと顧客が管理するキーを組み合わせて、Snowflakeデータを保護するための複合マスターキーを作成します。複合マスターキーはアカウントマスターキーとして動作し、階層内のすべてのキーをラップします。ただし、複合マスターキーが生データを暗号化することはありません。

複合マスターキー階層内にある、顧客が管理するキーが取り消されると、データをSnowflakeで復号化できなくなり、Snowflakeの標準暗号化よりも高いレベルのセキュリティと制御が提供されます。このデュアルキー暗号化モデルは、Snowflakeの組み込みユーザー認証とともに、 Tri-Secret Secure が提供する3つのレベルのデータ保護を可能にします。

注意

Snowflakeを使用してアカウントで Tri-Secret Secure を有効にする前に、 顧客が管理するキー で言及されたキーを保護する責任について慎重に検討する必要があります。質問や懸念がある場合は、 Snowflakeサポート にお問い合わせください。

Snowflakeは、当社が維持するキーに対しても同じ責任を負います。サービスのセキュリティ関連のすべての側面と同様に、当社では細心の注意を払いこの責任に取り組んでいます。

すべてのキーは、SOC 2 Type II、PCI-DSS、HIPAAおよび HITRUST CSF など、最高のセキュリティ認定を取得できるようにする厳格なポリシーの下で維持されています。

機能の互換性

次の機能は Tri-Secret Secure には対応していません。

自己登録の概要

CMK 自己登録プロセスを使用して、 Tri-Secret Secure で使用するための CMK を登録し、アクティブ化できます。さらに、 Tri-Secret Secure で使用するために CMK を置換する場合、自己登録プロセスでは、新しい CMK が登録され、アクティベートされているかどうかをお知らせします。自己登録プロセスを完了した後、Snowflakeサポートに連絡して、Snowflakeアカウントで Tri-Secret Secure を使用できるようにすることができます。

自己登録プロセスでは、このようなメリットがあります。

  • CMKの登録と認証の手順を合理化します。

  • Tri-Secret Secure で、 CMK 登録とアクティベーションのステータスの透明性を提供します。

  • Snowflakeアカウントをホストするクラウドプラットフォームの鍵管理サービス(KMS)サービスとの連携を容易にします。

  • Tri-Secret Secure で使用するために新しい CMK を登録すると同時に、CMK を回転させることができます。

自己登録手順

自己登録の流れは以下の通りです。

  1. 顧客の場合、以下のことを行ってください:

    1. CMKを作成します。

    2. CMKを登録します。

    3. クラウドプロバイダーの情報を生成します。

    4. KMSポリシーを適用します。

    5. SnowflakeアカウントとCMKの接続を確認します。

    6. Snowflake サポートに連絡して、Snowflakeアカウントで Tri-Secret Secure を使用できるようにしてください。

  2. Snowflakeサポートは、登録した CMK に基づいて、Snowflakeアカウントが Tri-Secret Secure を使用できるようにします。

このセクションの手順では、クラウドに依存しない手順を維持するために、「Amazon Resource Number」 (ARN) のような用語を避けます。手順は、Snowflakeアカウントをホストするクラウドプラットフォームに関係なく同じです。ただし、各クラウドプラットフォームサービスが異なるため、一部のステップのシステム関数の引数は異なります。

Tri-Secret Secure で使用するために CMK を自己登録するには、以下の手順に従います。

  1. SnowflakeアカウントをホストするクラウドプラットフォームのKMSサービスで、CMKを作成します。

  2. Snowflakeでは、 SYSTEM$REGISTER_CMK_INFO システム関数を呼び出して、KMS 統合に CMK を登録します。

    Snowflakeアカウントをホストするクラウドプラットフォームのシステム関数引数を再度確認してください。

  3. SYSTEM$GET_CMK_INFO システム関数を呼び出し、登録した CMK の詳細を表示します。

  4. SYSTEM$GET_CMK_CONFIG システム関数を呼び出して、クラウドプロバイダーに必要な情報を生成します。

    このポリシーにより、Snowflake はお客様のCMKにアクセスすることができます。

    Snowflake アカウントが Microsoft Azure の場合、 tenant_id の値を関数に渡します。

  5. SYSTEM$VERIFY_CMK_INFO システム関数を呼び出して、Snowflakeアカウントと CMK の接続を確認します。

  6. Snowflakeサポート に連絡し、Snowflake アカウントで Tri-Secret Secure を使用できるようにするようリクエストしてください。

    Tri-Secret Secure で使用したい特定のアカウントを必ず明記してください。

Tip

Snowflake サポートに連絡した後、SYSTEM$GET_CMK_INFOシステム関数を呼び出して、有効化ステータスを表示できます。

Snowflakeサポートがお客様のSnowflakeアカウントで Tri-Secret Secure を使用できるようにすると、 SYSTEM$GET_CMK_INFO 関数の出力には is activated が含まれます。これは、Snowflakeアカウントが、登録した CMK で Tri-Secret Secure を使用していることを意味します。

Tri-Secret Secure に異なる CMK を設定する

自己登録プロセスでは、セキュリティのニーズに応じて異なるCMKを登録できます。CMKの新規登録手順は、CMKの初期登録およびアクティベーションの際に行った自己登録手順と同じです。

Tri-Secret Secure で使用している CMK を更新または交換するための自己登録プロセスは、いつでも完了できます。新しいキーで自己登録プロセスを再度行うと、システム関数の出力が異なります。違いは、 Tri-Secret Secure に登録され使用されている CMK がすでにあり、新しい CMK を有効にする過程にあることです。詳細については、各システム関数で可能な出力をご参照ください。