セキュリティ プリンシパルの参照
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.com
、live.com
、outlook.com
などです。
MSA プリンシパルの参照
IdP | 型 | 構文 |
---|---|---|
Live.com | User | msauser= Upn |
例
次の例では、MSA ユーザーをデータベースのユーザー ロールに Test
割り当てます。
.add database Test users ('msauser=abbiatkins@live.com') 'Test user (live.com)'
テーブルのデータ パーティション分割ポリシーを管理する
- 認証の概要を読む
- 管理コマンドを使用してセキュリティ ロールを割り当てる方法について説明します
- Azure portalを使用してデータベース プリンシパルとロールを管理する方法について説明します
- current_principal_details()
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示