次の方法で共有


セキュリティ プリンシパルの参照

Azure Data Explorer承認モデルを使用すると、Microsoft Entraユーザー ID とアプリケーション ID と Microsoft アカウント (MSA) をセキュリティ プリンシパルとして使用できます。 この記事では、Microsoft Entra ID と MSA の両方でサポートされているプリンシパルの種類の概要と、管理コマンドを使用してセキュリティ ロールを割り当てるときにこれらのプリンシパルを適切に参照する方法について説明します。

Microsoft Entra ID

クラスターにアクセスするには、Microsoft Entra サービスに対する認証を行うことをお勧めします。 Microsoft Entra ID は、セキュリティ プリンシパルを認証し、Microsoft の Active Directory などの他の ID プロバイダーと調整できる ID プロバイダーです。

Microsoft Entra ID では、次の認証シナリオがサポートされます。

  • ユーザー認証 (対話型サインイン):人間のプリンシパルを認証するために使用されます。
  • アプリケーション認証 (非対話型サインイン): ユーザー操作がない状態で実行または認証する必要があるサービスとアプリケーションを認証するために使用されます。

Note

  • Microsoft Entra ID では、定義上オンプレミス AD エンティティであるサービス アカウントの認証は許可されません。 AD サービス アカウントと同等のMicrosoft Entraは、Microsoft Entra アプリケーションです。
  • セキュリティ グループ (SG) プリンシパルのみがサポートされており、配布グループ (DG) プリンシパルはサポートされていません。 クラスター上で DG のアクセスを設定しようとするとエラーが発生します。

Microsoft Entra プリンシパルとグループの参照

ユーザーとアプリケーションのプリンシパルとグループMicrosoft Entra参照するための構文の概要を次の表に示します。

ユーザー プリンシパル名 (UPN) を使用してユーザー プリンシパルを参照する場合、ドメイン名からテナントを推論し、プリンシパルを見つけようとします。 プリンシパルが見つからない場合は、ユーザーの UPN またはオブジェクト ID に加えて、テナント ID または名前を明示的に指定します。

同様に、グループの電子メール アドレスを持つセキュリティ グループを UPN 形式 で参照できます。ドメイン名からテナントを推論しようとします。 グループが見つからない場合は、グループの表示名またはオブジェクト ID に加えて、テナント ID または名前を明示的に指定します。

エンティティの種類 Microsoft Entra テナント 構文
User 暗黙 aaduser=Upn
User 明示的 (ID) aaduser=UPN;TenantId
または
aaduser=ObjectID;TenantId
User 明示的 (名前) aaduser=UPN;TenantName
または
aaduser=ObjectID;TenantName
グループ化 暗黙 aadgroup=GroupEmailAddress
グループ化 明示的 (ID) aadgroup=GroupDisplayName;TenantId
または
aadgroup=GroupObjectId;TenantId
グループ化 明示的 (名前) aadgroup=GroupDisplayName;TenantName
または
aadgroup=GroupObjectId;TenantName
アプリ 明示的 (ID) aadapp=ApplicationDisplayName;TenantId
または
aadapp=ApplicationId;TenantId
アプリ 明示的 (名前) aadapp=ApplicationDisplayName;TenantName
または
aadapp=ApplicationId;TenantName

注意

"App" 形式を使用して マネージド ID を参照します。 ApplicationId はマネージド ID オブジェクト ID またはマネージド ID クライアント (アプリケーション) ID です。

次の例では、ユーザー UPN を使用して、データベースに対するユーザー ロールのプリンシパルを Test 定義します。 テナント情報が指定されていないため、クラスターは UPN を使用してMicrosoft Entraテナントの解決を試みます。

.add database Test users ('aaduser=imikeoein@fabrikam.com') 'Test user (AAD)'

次の例では、グループ名とテナント名を使用して、データベースのユーザー ロールにグループを Test 割り当てます。

.add database Test users ('aadgroup=SGDisplayName;fabrikam.com') 'Test group @fabrikam.com (AAD)'

次の例では、アプリ ID とテナント名を使用して、アプリにデータベースのユーザー ロールを Test 割り当てます。

.add database Test users ('aadapp=4c7e82bd-6adb-46c3-b413-fdd44834c69b;fabrikam.com') 'Test app @fabrikam.com (AAD)'

Microsoft アカウント (MSA)

Microsoft アカウント (MSA) のユーザー認証がサポートされています。 MSA は、Microsoft が管理するすべての非組織ユーザー アカウントです。 たとえば、hotmail.comlive.comoutlook.com などです。

MSA プリンシパルの参照

IdP 構文
Live.com User msauser=Upn

次の例では、MSA ユーザーをデータベースのユーザー ロールに Test 割り当てます。

.add database Test users ('msauser=abbiatkins@live.com') 'Test user (live.com)'

テーブルのデータ パーティション分割ポリシーを管理する