この記事では、 Microsoft Entra ID で ID を管理する方法と、Microsoft Planetary Computer Pro のロールベースのアクセス制御 (RBAC) を構成する方法について説明します。 このプロセスにより、ユーザーは特定の GeoCatalog リソース アクセス許可を Microsoft Entra ID に割り当てることができます。
[前提条件]
- アクティブなサブスクリプションを持つ Azure アカウント - アカウントを無料で作成する
- 既存の GeoCatalog リソース
- Azure CLI (CLI ベースのロールの割り当て用)
-
az login経由でAzureに対して認証されます。 GeoCatalog コントロール プレーン API には、Azure Active Directory OAuth2 認証とuser_impersonationスコープが必要です。 Azure CLIでは、サインイン後に自動的に処理されます。
ユーザーの作成と管理
Microsoft Entra ID の作成 、招待、および削除 に関するユーザーの操作方法に関する記事に従って、ユーザーの一覧を作成および管理します。 ユーザーが作成されたら、1 つ以上の RBAC ロールを割り当て、GeoCatalog リソースにアクセスするための適切なアクセス許可をユーザーに付与する必要があります。
プラネタリー コンピューター Pro では、Azure に組み込まれているロールに加えて、2 つの GeoCatalog リソース固有のロールが定義されています。
| 役割 | 説明 | RBAC 管理を許可しますか? |
|---|---|---|
| GeoCatalog 管理者 | ユーザーが GeoCatalog 内のデータの読み取り、書き込み、削除を行える | いいえ |
| GeoCatalog リーダー | ユーザーが GeoCatalogs データのみを読み取ることができます。 | いいえ |
| 所有者 | RBAC を管理する機能など、すべてのリソースへのフル アクセスを許可する Azure 組み込みロール。 | イエス |
| ユーザーアクセス管理者 | Azure リソースへのユーザー アクセスの管理を許可する Azure 組み込みロール。 | イエス |
| 役割に基づくアクセス制御管理者 | RBAC の割り当てとアクセス許可の管理を許可する Azure 組み込みロール。 | イエス |
注
所有者 は GeoCatalog 管理者でもあります。
認証と承認の概要
RBAC を使用して ID を承認するには、まず、Microsoft Entra IDに対する認証を行う必要があります。 認証方法は、GeoCatalog にアクセスする ID の種類によって異なります。
| IDの種類 | 認証方法 | 次に、認証してから |
|---|---|---|
| ユーザー (ポータル、CLI、エクスプローラー) | 対話型サインイン (az login またはブラウザー OAuth2) |
この記事で割り当てられている RBAC ロール |
| マネージド ID (Azure 上のアプリ) | Azure インフラストラクチャ経由の自動トークン | この記事で割り当てられている RBAC ロール |
| サービス プリンシパル (Azure外のアプリ) | Entra アプリの登録によるクライアント シークレット/証明書 | この記事で割り当てられている RBAC ロール |
すべての GeoCatalog コントロール プレーンとデータ プレーンの操作には、 user_impersonation スコープを持つ有効な OAuth2 ベアラー トークンが必要です。 シナリオごとの詳細な設定については、「 アプリケーション認証の構成」を参照してください。 Azure RBAC の概念の詳細については、ロールベースのアクセス制御の概要Azure参照してください。
ロールベースのアクセス制御をユーザーに割り当てる
Azure portal を使用して、惑星コンピューター Pro ユーザーに RBAC ロールを割り当てることができます。 このセクションでは、GeoCatalog アクセス制御 (IAM) コントロールを使用して 、GeoCatalog 管理者 ロールを 1 人以上のユーザーに割り当てる方法について説明します。
Azure portal 内で、左側のサイドバーにある GeoCatalog リソース のアクセス制御 (IAM) タブに移動します。
[ 追加]>[ロールの割り当ての追加] を選択します。
ジョブ関数ロールの一覧から GeoCatalog Administrator を選択し、ページの下部にある [次へ] ボタンを選択します。
ユーザー、グループ、またはサービス プリンシパルのラジオ ボタンを選択します。
[メンバーの選択] を選択します
右側に表示される [ メンバーの選択 ] ウィンドウでユーザーを検索します。 一覧から名前または ID を選択して、 選択したメンバーの一覧に追加します。 このロールを割り当てる必要がある各ユーザーに対して、この手順を繰り返します。
このロールを割り当てる必要があるすべてのユーザーが選択されたら、ウィンドウの下部にある [選択 ] ボタンを使用してウィンドウを閉じます。
ページの下部にある次へ を選択します。
情報を確認したら、レビュー + 割り当てを選択して割り当てを完了します。
選択したユーザーは、Azure portal または API を使用して GeoCatalog リソースにアクセスできるようになりました。
Azure CLIを使用してロールを割り当てる
ARM コントロール プレーン API (Microsoft.Authorization/roleAssignments) を呼び出すAzure CLIを使用して RBAC ロールを割り当てることもできます。
ロールを割り当てる
# Define variables
SUBSCRIPTION_ID="{your-subscription-id}"
RESOURCE_GROUP="{your-resource-group}"
GEOCATALOG_NAME="{your-geocatalog-name}"
ASSIGNEE_OBJECT_ID="{user-or-service-principal-object-id}"
# GeoCatalog Administrator role definition ID
ROLE_DEFINITION_ID="$(az role definition list --name "GeoCatalog Administrator" --query "[0].id" -o tsv)"
# Assign the role scoped to the GeoCatalog resource
az role assignment create \
--assignee-object-id "$ASSIGNEE_OBJECT_ID" \
--role "$ROLE_DEFINITION_ID" \
--scope "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Orbital/geoCatalogs/$GEOCATALOG_NAME"
ロールの割り当てを削除する
az role assignment delete \
--assignee "$ASSIGNEE_OBJECT_ID" \
--role "GeoCatalog Administrator" \
--scope "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Orbital/geoCatalogs/$GEOCATALOG_NAME"
GeoCatalog のロールの割り当てを一覧表示する
az role assignment list \
--scope "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Orbital/geoCatalogs/$GEOCATALOG_NAME" \
--output table