Azure Policy を使用して Azure SQL で Microsoft Entra 専用認証を適用する
適用対象: Azure SQL Database Azure SQL Managed Instance
この記事では、ユーザーによって Azure SQL マネージド インスタンスが作成されるとき、または Azure SQL Database 用の論理サーバーが作成されるときに Microsoft Entra 専用認証を適用する Azure ポリシーの作成方法について説明します。 リソース作成時における Microsoft Entra 専用認証の詳細については、「Azure SQL で Microsoft Entra 専用認証を有効にしたサーバーを作成する」を参照してください。
Note
Azure Active Directory (Azure AD) の名前は Microsoft Entra ID に変更されましたが、現在、ポリシー名には元の Azure AD 名が含まれているため、Microsoft Entra 専用認証と Azure AD 専用認証は、この記事では同じ意味で使用されます。
この記事では、次のことについて説明します。
- 論理サーバーまたはマネージド インスタンスの作成時に Microsoft Entra 専用認証を強制的に有効にする Azure ポリシーを作成する
- Azure Policy のコンプライアンスをチェックする
前提条件
- Azure Policy を管理するためのアクセス許可があること。 詳細については、「Azure Policy における Azure RBAC アクセス許可」を参照してください。
Azure ポリシーを作成する
まず、SQL Database または Managed Instance のプロビジョニング時に Azure AD 専用認証を強制的に有効にする Azure ポリシーを作成します。
Azure ポータルにアクセスします。
Policy というサービスを検索します。
[作成] 設定で [定義] を選択します。
[検索] ボックスで、「Azure Active Directory 専用認証」を検索します。
Azure AD 専用認証を適用する組み込みポリシーが 2 つ用意されています。 1 つは SQL Database 用で、もう 1 つは SQL Managed Instance 用です。
- Azure SQL Database で、Azure Active Directory 専用認証が有効になっている必要があります
- Azure SQL Managed Instance で Azure Active Directory 専用認証を有効にする必要がある
サービスのポリシー名を選択します。 この例では、Azure SQL Database を使用します。 [Azure SQL Database should have Azure Active Directory Only Authentication enabled](Azure SQL Database で、Azure Active Directory 専用認証が有効になっている必要があります) を選択します。
新しいメニューで [割り当て] を選択します。
Note
このメニューの JSON スクリプトに、SQL Database 用のカスタム Azure ポリシーを作成するためのテンプレートとして使用できる組み込みのポリシー定義が表示されます。 既定値は
Audit
に設定されています。[基本] タブで、ボックスの横にあるセレクター ( ... ) を使用してスコープを追加します。
[スコープ] ウィンドウのドロップダウン メニューから [サブスクリプション] を選択し、このポリシーのリソース グループを選択します。 それが済んだら、 [選択] ボタンを使用して選択内容を保存します。
Note
リソース グループを選択しなかった場合、ポリシーはサブスクリプション全体に適用されます。
[基本] タブに戻って [割り当て名] をカスタマイズし、必要に応じて [説明] を入力します。 [ポリシーの適用] が [有効] になっていることを確認します。
[パラメーター] タブに移動し、 [Only show parameters that require input](入力が必要なパラメーターのみを表示する) オプションをオフにします。
[Effect](効果) で、 [禁止] を選択します。 この設定により、Azure AD 専用認証が有効にならずに論理サーバーが作成されるのを防ぐことができます。
[Non-compliance messages](コンプライアンス違反メッセージ) タブで、ポリシーの違反が生じた場合に表示されるポリシーのメッセージをカスタマイズできます。 サーバーの作成中に何のポリシーが適用されたかが、このメッセージでユーザーに伝えられます。
[Review + create](レビュー + 作成) を選択します。 ポリシーをレビューし、 [作成] ボタンを選択します。
Note
新しく作成したポリシーが適用されるまでには、少し時間がかかることがあります。
ポリシーのコンプライアンスを確認する
ポリシー サービスの [コンプライアンス] 設定をチェックして、コンプライアンスの状態を確認できます。
ポリシーに割り当てておいた割り当て名を検索します。
Azure AD 専用認証で論理サーバーが作成されると、ポリシー レポートの [コンプライアンスの状態別のリソース] ビジュアルにあるカウンターが増やされます。 どのリソースが準拠していて、どのリソースが準拠していないかがわかります。
ポリシーの適用範囲内として選択したリソース グループに、既に作成済みのサーバーが含まれていた場合、準拠しているリソースと準拠していないリソースがポリシー レポートに表示されます。
Note
コンプライアンス レポートの更新には、少し時間がかかることがあります。 リソースの作成や Microsoft Entra 専用認証の設定に関連した変更は、すぐにはレポートされません。
サーバーをプロビジョニングする
これで、Azure Policy を割り当てたリソース グループに、論理サーバーまたはマネージド インスタンスをプロビジョニングすることができます。 サーバーの作成中に Azure AD 専用認証が有効になっていれば、プロビジョニングは成功します。 Azure AD 専用認証が有効になっていないと、プロビジョニングは失敗します。
詳細については、「Azure SQL で Microsoft Entra 専用認証を有効にしたサーバーを作成する」を参照してください。