ユーザーとは、環境、API プロキシ、キーストアなど、ハイブリッド組織とその組織内のエンティティにアクセスできる認証されたアカウントを表します。
新規ユーザーを Apigee 組織に追加するには、まず GCP プロジェクトでそのユーザーのアカウントにアクセス権を付与し、次にハイブリッド UI でアクセス権を付与します(このドキュメントでは、「ユーザー」と「ユーザー アカウント」という用語を区別なく使用しています)。
新しいユーザーを追加する場合は通常、次のことを行います。
- GCP Console では、新しいユーザーを GCP プロジェクトの 1 つ以上の役割に割り当てます。これでそのユーザーは、ハイブリッド組織内のすべての環境に幅広くアクセスできるようになります。
- ハイブリッド UI では、ハイブリッド組織の環境ごとの役割を 1 つ以上指定することで、新しいユーザーのアクセスを絞り込みます。
詳細については、ハイブリッド UI でユーザーを管理するをご覧ください。
役割継承について
ユーザー アカウントに付与する機能は、ユーザーが割り当てた役割の種類によって異なります。たとえば、デベロッパーには API 作成者の役割を割り当て、API プロキシ、KVM、共有フローの作成を行えるようにします。プロキシをデプロイするユーザーには、デプロイ担当者の役割に割り当てることで、API プロキシ リビジョンのデプロイとデプロイ解除が可能になります。すべての Apigee の役割の詳細については、Apigee の役割をご覧ください。
また、ユーザーが役割に基づいてアクセスできるリソースは、その役割を割り当てた場所によって異なります。
- GCP プロジェクト: GCP Console で GCP プロジェクトの役割を割り当てると、ユーザーはその役割のすべてのハイブリッド リソース(すべての環境と、その環境内のすべてのリソース)にアクセスできます。これは、リソース階層において、GCP プロジェクトがハイブリッド UI の親であるためです。ハイブリッド UI で環境ごとにユーザーの役割を指定すると、このアクセスを絞り込めます。
- 環境へのアクセス: ハイブリッド UI で役割を割り当てると、ユーザーは選択した環境でのみその役割を果たします。この割り当ては、GCP プロジェクト レベルの設定より優先されます。これらの役割の割り当ては、特定の環境向けです。GCP プロジェクトの割り当ては、これらの権限より優先されます。
次の図は、このアクセスモデルでの継承の仕組みを示しています。
これらのレベルの 1 つで、特定の役割をユーザーに追加すると、ユーザーはその役割のそのレベルの下にあるすべてのリソースにデフォルトでアクセスできます。ハイブリッド環境は GCP プロジェクトの下のリソースとみなされるため、GCP プロジェクトで設定された権限は、さらに細かい権限を指定しない限りすべての環境に適用されます。
たとえば、あるユーザーを GCP プロジェクトで API 作成者として定義し、ハイブリッド UI で環境ごとの役割を指定しない場合、そのユーザーはハイブリッド組織のすべての環境に API 作成者としてアクセスできます。
役割の推奨事項
Apigee では、新しいユーザー アカウントを追加するごとに、次のことを行うことをおすすめします(「スーパー ユーザー」や管理者を追加する場合は不要です)。
- GCP Console で、新しいユーザー アカウントを追加し、最小限の権限を持つ役割を選択します。たとえば、新しいユーザーの役割を API 作成者に設定します。
- ハイブリッド UI の [Environment Access] ビューでユーザーを追加し、ユーザーの管理の説明に従って、組織内の各環境に適した役割を設定します。これにより、GCP Console でプロジェクトへのユーザー アクセス権を付与した後に、より細かい権限を適用できます。
繰り返しになりますが、ユーザーに特定の環境に対する権限のみを持たせるには、GCP Console のプロジェクトに追加した後、ハイブリッド UI の環境で適切な役割を付与します。
GCP アクセス制御について
Google Cloud Platform 内のアクセス制御は、Cloud Identity and Access Management(Cloud IAM)を使用して制御されます。Cloud IAM を使用すると、プロジェクト内の誰がどのようなアクセス権限でどのリソースにアクセスできるのかを設定できます。
ユーザーはメンバーの一種で、リソースへのアクセスを許可できる ID を指す広義語です。GCP メンバーには、サービス アカウント、Google グループ、G Suite ドメインなどの種類があります。詳細については、Cloud Identity and Access Management のこの概要をご覧ください。