次の方法で共有


Active Directory 認証を使う Azure Arc 対応 SQL Managed Instance

Azure Arc 対応データ サービスでは、ID およびアクセス管理 (IAM) 用の Active Directory (AD) がサポートされます。 Azure Arc 対応 SQL Managed Instance では、認証に既存のオンプレミスの Active Directory (AD) ドメインが使用されます。

この記事では、Active Directory (AD) 認証で Azure Arc 対応 SQL Managed Instance を有効にする方法について説明します。 この記事では、次の 2 つの可能な AD 統合モードを示します。

  • カスタマーマネージド keytab (CMK)
  • サービス管理キータブ (SMK)

Active Directory (AD) 統合モードの概念では、以下のような keytab 管理のプロセスについて説明しています。

  • SQL Managed Instance で使われる AD アカウントの作成
  • 上記の AD アカウントでのサービス プリンシパル名 (SPN) の登録。
  • keytab ファイルの生成

背景

Linux と Linux コンテナーで SQL Server の Active Directory 認証を有効にするには、keytab ファイルを使用します。 keytab ファイルは、サービス プリンシパル名 (SPN)、アカウント名、ホスト名を含む暗号化ファイルです。 SQL Server は、Active Directory (AD) ドメインに対する自身の認証と、Active Directory (AD) を使ったクライアントの認証に keytab ファイルを使います。 Arc 対応 SQL Managed Instance に対して Active Directory 認証を有効にするには、次の手順を実行します。

以下の図は、Azure Arc 対応 SQL Managed Instance に対して Active Directory 認証を有効にする方法を示しています。

Actice Directory Deployment User journey

Active Directory (AD) コネクタとは

SQL Managed Instance の Active Directory 認証を有効にするには、インスタンスを Active Directory ドメインと通信できる環境にデプロイする必要があります。

これを容易にするために、Azure Arc 対応データ サービスでは、Active Directory Connector という新しい Kubernetes ネイティブ カスタム リソース定義 (CRD) が導入されています。 これにより、同じデータ コントローラー上で動作するインスタンスに、Active Directory 認証を実行する機能が提供されます。

AD 統合モードの比較

2 つの Active Directory 統合モードの違いとは

Azure Arc 対応 SQL Managed Instance で Active Directory 認証を有効にするには、Active Directory 統合デプロイ モードを指定する Active Directory コネクタが必要です。 Active Directory 統合モードは、次の 2 つです。

  • カスタマー マネージド keytab
  • サービスで管理される keytab

次のセクションでは、これらのモードを比較します。

カスタマーマネージド keytab システム マネージド keytab
ユース ケース Active Directory オブジェクトの管理に慣れており、自動化プロセスの柔軟性を求めている中小規模の企業 高度に自動化された Active Directory 管理エクスペリエンスを求めているあらゆる規模の企業
ユーザーが提供するもの Active Directory アカウントとそのアカウント配下の SPN と Active Directory 認証用の keytab ファイル 組織単位 (OU) と、Active Directory のその OU に対して十分な権限を持っているドメイン サービス アカウント。
特性 ユーザーによる管理。 ユーザーは Active Directory アカウントを取り込み、マネージド インスタンスと keytab ファイルの ID を偽装します。 システムによる管理。 システムは、マネージド インスタンスごとにドメイン サービス アカウントを作成し、そのアカウントに SPN を自動的に設定します。 また、マネージド インスタンスに keytab ファイルを作成して配信します。
配置プロセス 1.データ コントローラーをデプロイする
2.keytab ファイルを作成する
3. keytab 情報を Kubernetes シークレットに設定する
4. AD コネクタをデプロイし、SQL マネージド インスタンスをデプロイする

詳細については、カスタマーマネージド keytab Active Directory コネクタのデプロイに関するページを参照してください
1. データ コントローラーをデプロイし、AD コネクタをデプロイする
2. SQL マネージド インスタンスをデプロイする

詳細については、システムマネージド keytab Active Directory コネクタのデプロイに関するページを参照してください
管理の容易性 keytab ファイルは、Active Directory ユーティリティ (adutil) の手順に従って作成できます。 手動の keytab のローテーション。 マネージド keytab のローテーション。
制限事項 サービス間で keytab ファイルを共有することはお勧めしません。 各サービスには、特定の keytab ファイルが必要です。 keytab ファイルの数が増えると、作業量のレベルが上がり、複雑さが増します。 マネージド keytab の生成とローテーション。 サービス アカウントには、資格情報を管理するための、Active Directory での十分なアクセス許可が必要です。

分散型可用性グループはサポートされていません。

いずれのモードでも、SQL マネージド インスタンスごとに特定の Active Directory アカウント、keytab、Kubernetes シークレットが必要です。

Active Directory 認証を有効にする

Active Directory 認証を有効にする目的でインスタンスをデプロイする場合、使用する Active Directory コネクタ インスタンスを参照する必要があります。 マネージド インスタンス仕様で Active Directory コネクタを参照すると、インスタンス コンテナーが Active Directory で認証するために必要な環境が自動的に設定されます。