次の方法で共有


ユーザー割り当てマネージド ID と TDE 用のテナント間 CMK を使用して構成されたサーバーを作成する

適用対象:Azure SQL Database

このガイドでは、Transparent Data Encryption (TDE) とカスタマー マネージド キー (CMK) を使って Azure SQL 論理サーバーを作成する手順について説明します。ユーザー割り当てマネージド ID を使って、論理サーバー テナントとは異なる Microsoft Entra テナントの Azure Key Vault にアクセスします。 詳しくは、「Transparent Data Encryption でのクロステナント カスタマー マネージド キー」をご覧ください。

Note

Microsoft Entra ID の、旧称は Azure Active Directory(Azure AD)です。

前提条件

1 つ目のテナントで必要なリソース

このチュートリアルでは、1 つ目のテナントは独立系ソフトウェア ベンダー (ISV) に属し、2 つ目のテナントはクライアントのものであると仮定します。 このシナリオについて詳しくは、「Transparent Data Encryption でのクロステナント カスタマー マネージド キー」をご覧ください。

テナント間 CMK を使って Azure SQL Database 用に TDE を構成する前に、アプリケーションのフェデレーション ID 資格情報として割り当てられたユーザー割り当てマネージド ID を使って構成されたマルチテナント Microsoft Entra アプリケーションを用意する必要があります。 前提条件のガイドのいずれかに従って行います。

  1. Azure SQL Database を作成する最初のテナントで、マルチテナント Microsoft Entra アプリケーションを作成して構成します

  2. ユーザー割り当てマネージド ID を作成する

  3. マルチテナント アプリケーションのフェデレーション ID 資格情報として、ユーザー割り当てマネージド ID を構成します

  4. アプリケーション名とアプリケーション ID を記録しておきます。 これは、Azure portal>[Microsoft Entra]>[エンタープライズ アプリケーション] で作成されたアプリケーションを検索することで確認できます

2 つ目のテナントで必要なリソース

Note

Azure AD および MSOnline PowerShell モジュールは、2024 年 3 月 30 日の時点で非推奨となります。 詳細については、非推奨の最新情報を参照してください。 この日以降、これらのモジュールのサポートは、Microsoft Graph PowerShell SDK への移行支援とセキュリティ修正プログラムに限定されます。 非推奨になるモジュールは、2025 年 3 月 30 日まで引き続き機能します。

Microsoft Entra ID (旧称 Azure AD) を使用するには、Microsoft Graph PowerShell に移行することをお勧めします。 移行に関する一般的な質問については、「移行に関する FAQ」を参照してください。 注: バージョン 1.0.x の MSOnline では、2024 年 6 月 30 日以降に中断が発生する可能性があります。

  1. Azure Key Vault が存在する 2 つ目のテナントでは、1 つ目のテナントの登録済みアプリケーションのアプリケーション ID を使ってサービス プリンシパル (アプリケーション) を作成します。 マルチテナント アプリケーションを登録する方法の例をいくつか次に示します。 <TenantID><ApplicationID> をそれぞれ、Microsoft Entra ID のクライアント テナント ID と、マルチテナント アプリケーションのアプリケーション ID に置き換えます。

    • PowerShell:

      Connect-AzureAD -TenantID <TenantID>
      New-AzADServicePrincipal  -ApplicationId <ApplicationID>
      
    • Azure CLI:

      az login --tenant <TenantID>
      az ad sp create --id <ApplicationID>
      
  2. Azure portal>[Microsoft Entra ID]>[エンタープライズ アプリケーション] に移動し、先に作成したアプリケーションを検索します。

  3. Azure キー コンテナーがない場合は作成して、キーを作成します

  4. アクセス ポリシーを作成または設定します

    1. アクセス ポリシーを作成するときに、[キーのアクセス許可] で "キーの取得、キーの折り返し、キーの折り返し解除" のアクセス許可を選びます
    2. アクセス ポリシーを作成するときに、[プリンシパル] オプションで、最初のステップで作成したマルチテナント アプリケーションを選びます

    Azure portal でのキー コンテナーのアクセス ポリシー メニューのスクリーンショット。

  5. アクセス ポリシーとキーが作成されたら、Key Vault からキーを取得し、キー識別子を記録しておきます

TDE とテナント間カスタマー マネージド キー (CMK) を使用して構成されたサーバーを作成する

このガイドでは、ユーザー割り当てマネージド ID を使って Azure SQL で論理サーバーとデータベースを作成するプロセスと、テナント間カスタマー マネージド キーを設定する方法について説明します。 ユーザー割り当てマネージド ID は、サーバー作成フェーズの間に Transparent Data Encryption 用にカスタマー マネージド キーを設定するために必要です。

重要

API を使って SQL 論理サーバーを作成するユーザーまたはアプリケーションのサブスクリプションには、SQL Server 共同作成者マネージド ID オペレーター以上の RBAC ロールが必要です。

  1. Azure portal の [SQL デプロイ オプションの選択] ページを参照します。

  2. まだ Azure portal にサインインしていない場合は、求められたらサインインします。

  3. [SQL データベース] で、 [リソースの種類][単一データベース] に設定し、 [作成] を選択します。

  4. [SQL データベースの作成] フォームの [基本] タブにある [プロジェクトの詳細] で、目的の Azure [サブスクリプション] を選択します。

  5. [リソース グループ][新規作成] を選択し、リソース グループの名前を入力し、 [OK] を選択します。

  6. [データベース名] に、データベースの名前を入力します。 たとえば、「 ContosoHR 」のように入力します。

  7. [サーバー] で、 [新規作成] を選択し、 [新しいサーバー] フォームに次の値を入力します。

    • [サーバー名] : 一意のサーバー名を入力します。 サーバー名は、サブスクリプション内で一意ではなく、Azure のすべてのサーバーに対してグローバルに一意である必要があります。 mysqlserver135 などと入力すると、使用可能かどうかが Azure portal で確認できます。
    • [サーバー管理者ログイン]: 管理者のログイン名を入力します (例: azureuser)。
    • パスワード: パスワード要件を満たすパスワードを入力し、[パスワードの確認入力] フィールドにもう一度入力します。
    • [場所] : ドロップダウン リストから場所を選択します
  8. ページの下部にある [Next: Networking](次へ: ネットワーク) を選択します。

  9. [ネットワーク] タブの [接続方法] で、 [パブリック エンドポイント] を選択します。

  10. [ファイアウォール規則] で、 [現在のクライアント IP アドレスを追加する][はい] に設定します。 [Azure サービスおよびリソースにこのサーバー グループへのアクセスを許可する][いいえ] に設定したままにします。 このページの残りの選択項目は、既定値のままでかまいません。

    Azure portal で SQL サーバーを作成するときのネットワーク設定のスクリーンショット。

  11. ページの下部で [次へ: セキュリティ] を選択します。

  12. [セキュリティ] タブの [ID] で、[ID の構成] を選択します。

    Azure portal でのセキュリティ設定と ID 構成のスクリーンショット。

  13. [ID] メニューの [システム割り当てマネージド ID][オフ] を選んでから、[ユーザー割り当てマネージド ID][追加] を選びます。 使用する [サブスクリプション] を選んでから、[ユーザー割り当てマネージド ID] で、選んだサブスクリプションから使用するユーザー割り当てマネージド ID を選びます。 次に [追加] ボタンを選択します。

  14. [プライマリ ID] で、前の手順で選択したのと同じユーザー割り当てマネージド ID を選択します。

    サーバーのプライマリ ID とフェデレーション クライアント ID の選択のスクリーンショット。

  15. [フェデレーション クライアント ID] では、[ID の変更] オプションを選んで、「前提条件」で作成したマルチテナント アプリケーションを検索します。

    サーバー ID を構成するときのユーザー割り当てマネージド ID のスクリーンショット。

    Note

    マルチテナント アプリケーションが必要なアクセス許可 ("取得、キーを折り返す、キーの折り返しを解除") でキー コンテナー アクセス ポリシーに追加されていない場合、Azure portal での ID フェデレーションにこのアプリケーションを使うとエラーが表示されます。 フェデレーション クライアント ID を構成する前に、アクセス許可が正しく構成されていることを確認します。

  16. [適用] を選択します

  17. [セキュリティ] タブの [Transparent Data Encryption] で、[Transparent Data Encryption を構成する] を選びます。 [カスタマー マネージド キー] を選ぶと、[キー識別子を入力してください] オプションが表示されます。 2 つ目のテナントのキーから取得したキー識別子を追加します。

    キー識別子を使った TDE の構成のスクリーンショット。

  18. [適用] を選択します

  19. ページの下部にある [確認と作成] を選択します

  20. [確認と作成] ページで、確認後、 [作成] を選択します。

次のステップ

こちらもご覧ください