エンタイトルメント サービス

アクセス管理は、サービスまたはリソースにとって重要な機能です。 エンタイトルメント サービスを使用すると、Azure Data Manager for Energy インスタンスを使用できるユーザー、表示または変更できる内容、使用できるサービスまたはデータを制御できます。

OSDU グループの構造と名前付け

Azure Data Manager for Energy のエンタイトルメント サービスを使用すると、グループを作成してグループのメンバーシップを管理できます。 エンタイトルメント グループは、Azure Data Manager for Energy インスタンス内の特定のデータ パーティションに対するサービスまたはデータ ソースに対するアクセス許可を定義します。 特定のグループに追加されたユーザーは、関連付けられたアクセス許可を取得します。 すべてのグループ識別子 (電子メール) は形式 {groupType}.{serviceName|resourceName}.{permission}@{partition}.{domain} です。

同じ Azure Data Manager for Energy インスタンス内であっても、新しいデータ パーティションごとに異なるグループと関連するユーザー権利を設定する必要があります。

OSDU グループの種類

エンタイトルメント サービスでは、承認に次の 3 つのユース ケースが有効になります。

データ グループ

  • データ グループは、データの承認を有効にするために使用されます。
  • データ グループは、data.welldb.viewersdata.welldb.ownersなど、"data" という単語で始まります。
  • 個々のユーザーがデータ グループに追加されます。このグループは、データがシステムに読み込まれた後にデータの viewerowner アクセスを有効にするために、個々のデータ レコードの ACL に追加されます。
  • データを upload するには、インジェスト プロセス中に使用されるさまざまな OSDU サービスの権利が必要です。 OSDU サービスの組み合わせは、インジェストの方法によって異なります。 たとえば、マニフェスト インジェストについては、API で使用されている OSDU サービスを理解するために、「マニフェスト ベースのインジェストの概念」を参照してください。 ユーザーは、データをアップロードするために ACL の一部である必要はありません

サービス グループ

  • サービス グループは、サービスの承認を有効にするために使用されます。
  • サービス グループは、service.storage.userservice.storage.adminなど、"service" という単語で始まります。
  • Azure Data Manager for Energy インスタンスの各データ パーティションに OSDU サービスがプロビジョニングされている場合、サービス グループが事前に定義されます。
  • これらのグループを使用すると、OSDU サービスに対応する OSDU API を呼び出すために、viewereditor、および admin アクセスが可能になります。

ユーザー グループ

  • ユーザー グループは、ユーザー グループとサービス グループを階層的にグループ化するために使用されます。
  • サービス グループは、users.datalake.viewersusers.datalake.editorsなど、"users" という単語で始まります。

入れ子になった階層

  • user_1が data_group_1 の一部であり、data_group_1 が user_group_1 のメンバーとして追加された場合、OSDU コードは入れ子になったメンバーシップをチェックし、user_group_1 のエンタイトルメントにアクセスするための user_1 を承認します。 これは、OSDU エンタイトルメント チェック API および OSDU Retrieve Group API で説明されています。

  • 個々のユーザーを user group に追加できます。 その後、user groupdata group に追加されます。 データ グループは、データ レコードの ACL に追加されます。 個々のユーザーをデータ グループに 1 つずつ追加する必要がないため、データ グループの抽象化が可能になります。 代わりに、user group にユーザーを追加できます。 その後、複数の data groups に対して user group を繰り返し使用できます。 入れ子になった構造は、OSDU のメンバーシップを管理するためのスケーラビリティを提供するのに役立ちます。

既定のグループ

  • 一部の OSDU グループは、データ パーティションのプロビジョニング時に既定で作成されます。
  • 既定では、data.default.viewersdata.default.owners のデータ グループが作成されます。
  • service.entitlement.adminservice.legal.editor などの各サービスを表示、編集、および管理するサービス グループは、既定で作成されます。
  • 既定では、usersusers.datalake.viewersusers.datalake.editorsusers.datalake.adminsusers.datalake.ops、および users.data.root のユーザー グループが作成されます。
  • Bootstrapped OSDU エンタイトルメント グループ の既定のメンバーとグループのグラフには、列ヘッダー グループが行ヘッダーのメンバーとして表示されます。 たとえば、users グループは既定では data.default.viewersdata.default.owners のメンバーです。 users.datalake.adminsusers.datalake.ops は、service.entitlement.admin グループのメンバーです。
  • サービス プリンシパル、または client-idapp-id は、すべてのグループの既定の所有者です。

users@ グループの特殊性

  • "users" グループには、このグループの名前付け規則の例外が 1 つあります。 新しいデータ パーティションがプロビジョニングされると作成され、その名前は users@{partition}.{domain} のパターンに従います。
  • これには、特定のデータ パーティション内の任意の種類のアクセス権を持つすべてのユーザーの一覧が含まれます。 新しいユーザーをエンタイトルメント グループに追加する前に、新しいユーザーを users@{partition}.{domain} グループに追加する必要もあります。

users.data.root@ グループの特殊性

  • users.data.root エンタイトルメント グループは、グループの作成時のすべてのデータ グループの既定のメンバーです。 任意のデータ グループから users.data.root を削除しようとすると、OSDU によってこのメンバーシップが適用されているため、エラーが発生します。
  • users.data.root は、OSDU validate owner access API および OSDU users data root check API で説明されているように、レコードがシステムに作成されると、自動的にすべてのデータ レコードの既定かつ永続的な所有者となります。 その結果、ユーザーの OSDU メンバーシップの確認と共に、ユーザーが "DataManager" (data.root グループの一部) であるか確認し、データ レコードへのアクセス権を評価します。
  • users.data.root の既定のメンバーシップは、インスタンスの設定に使用される app-id のみです。 このグループに他のユーザーを明示的に追加して、データ レコードへの既定のアクセス権を付与できます。

シナリオの例:

  • data_record_1 には、ACL_1 と ACL_2 の 2 つの ACL があります。
  • User_1は、ACL_1と users.data.root のメンバーです。

ACL_1 から user_1 を削除しても、user_1 は users.data.root グループ経由で data_record_1 にアクセスできます。

また、ACL_1 と ACL_2 が data_record_1 から削除された場合、users.data.root は引き続きデータの所有者アクセス権を持つことになります。 これによって、データ レコードが孤立し続けることはありません。

不明な OID

既定で追加されたすべての OSDU グループに不明な OID が 1 つ表示されます。この OID は、内部システム間通信に使用される内部 Azure Data Manager for Energy GUID を示します。 この GUID はインスタンスごとに一意に作成され、ユーザーによる削除がシステムによって禁止されます。

Users

OSDU グループごとに、OWNER または MEMBER としてユーザーを追加できます。

  • OSDU グループの所有者である場合は、そのグループのメンバーを追加または削除するか、グループを削除できます。
  • OSDU グループのメンバーである場合は、OSDU グループのスコープに応じて、サービスまたはデータを表示、編集、または削除できます。 たとえば、service.legal.editor OSDU グループのメンバーである場合は、API を呼び出して法的サービスを変更できます。

Note

ユーザーを管理する他の所有者が存在しない場合、グループの所有者を削除しないでください。

エンタイトルメント API

エンタイトルメント API エンドポイントの完全な一覧については、OSDU エンタイトルメント サービスについてのページを参照してください。 エンタイトルメント API の使用方法を示すいくつかの図は、ユーザーの管理に関するページにあります。

Note

OSDU のドキュメントは v1 エンドポイントを参照していますが、このドキュメントに記載されているスクリプトは v2 エンドポイントを参照しています。これは正常に動作し、検証も行われています。

OSDU® は The Open Group の商標です。

次のステップ

次の手順については、以下を参照してください。

Azure Data Manager for Energy インスタンスにデータを取り込むこともできます。