Service Mesh IAMポリシー
Oracle Cloud Infrastructure Service Meshリソースにアクセスできるユーザーおよび付与されるアクセスのタイプを制御する、Identity and Access Management (IAM)ポリシーを作成します。
デフォルトでは、Administrators
グループのユーザーのみがすべてのサービス・メッシュ・リソースにアクセスできます。他のユーザーについては、アクセス権を付与する必要があります。
サービス・メッシュ・アクセス・ポリシーは、IAMポリシーとは異なります:
- IAMポリシーは、サービス・メッシュ・リソースを含む、どのグループおよびユーザーがどのOCIリソースにアクセスできるかを定義します。次に例を示します:
- 誰がサービス・メッシュを作成できますか。
- 特定のコンパートメント内の仮想デプロイメントを管理できるのは誰ですか。
- サービス・メッシュ・アクセス・ポリシーは、サービス・メッシュ内のどのサービスが相互に通信できるか、どの方向で通信できるかを定義します。次に例を示します:
- 仮想サービスAと通信できる仮想サービスはどれですか。
- 仮想サービスBはどのサービスと通信できますか。
IAMポリシーの詳細は、次を参照してください:
- ポリシーの開始
- ポリシー・リファレンス。Oracle Cloud Infrastructureのすべてのポリシーのリストです。
リソース・タイプ
サービス・メッシュ・リソースへのアクセス権をユーザーに付与するには、サービス・メッシュ・リソース・タイプを使用してIAMポリシーを作成します。
すべてのサービス・メッシュ・リソースにアクセスするには、集約リソース・タイプを使用します:
service-mesh-family
例:
allow group MeshManagers to manage service-mesh-family in compartment B
service-mesh-family
には、次の個別のリソース・タイプが含まれます。
service-meshes
mesh-virtual-services
mesh-virtual-service-route-tables
mesh-virtual-deployments
mesh-ingress-gateways
mesh-ingress-gateway-route-tables
mesh-access-policies
mesh-work-requests
service-mesh-family
に、ユーザーがアクセスできないリソース・タイプがある場合は、個々のリソース・タイプのポリシーを作成します。
たとえば、ユーザーのグループがサービス・メッシュ・アクセス・ポリシーを管理できるようにし、サービス・メッシュを作成できるようにする場合は、次のように記述します。
allow group MeshUsers to manage mesh-access-policies in compartment B
動詞+リソース・タイプの組合せの詳細
このトピックでは、サービス・メッシュの各リソース・タイプの権限およびAPI操作をリストします。
inspect
read
use
manage
アクセスのレベルは、inspect
からread
、use
、manage
の順に累積します。
たとえば、service-mesh-family
に対するread
権限を持つユーザーは、read
およびinspect
操作を実行できますが、use
およびmanage
操作は許可されません。
権限および操作を確認するには、このトピックの各リソース・タイプを展開します。
サービス・テーマ
この表は、service-meshes
リソースの権限およびAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group MeshReaders to read service-meshes in compartment B
このポリシーを使用すると、MeshReaders
グループのユーザーはinspect
操作とread
操作の両方を実行できます。inspect
に対して許可される操作:ListMeshes
。コンパートメントBのサービス・メッシュをリストします。read
に対して許可される操作:GetMesh
。コンパートメントBの特定のサービス・メッシュの詳細を取得します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
SERVICE_MESH_LIST |
ListMeshes |
なし |
read |
|
|
なし |
use |
|
|
なし |
manage |
|
|
なし |
(1) SERVICE_MESH_ATTACH
では、子オブジェクト(仮想サービス、アクセス・ポリシーなど)を作成して特定の親メッシュにアタッチできます。SERVICE_MESH_DELETE
では、子オブジェクトを削除できます。
メッシュ仮想サービス
この表は、mesh-virtual-services
リソースの権限およびAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group VirtualServiceUsers to use mesh-virtual-services in compartment B
このポリシーを使用すると、VirtualServiceReaders
グループのユーザーはinspect
、read
およびuse
操作を実行できます。inspect
に対して許可される操作:ListVirtualService
。指定されたメッシュの仮想サービスをリストします。read
に対して許可される操作:GetVirtualService
。特定の仮想サービスの詳細を取得します。use
に対して許可される操作:UpdateVirtualService
。特定の仮想サービスの詳細を更新します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
MESH_VIRTUAL_SERVICE_LIST |
ListVirtualService |
なし |
read |
|
|
なし |
use |
|
|
なし |
manage |
|
|
|
mesh- virtual- service- route- tables
この表は、mesh-virtual-service-route-tables
リソースの権限およびAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group VirtualServiceManagers to manage mesh-virtual-service-route-tables in compartment B
このポリシーを使用すると、VirtualServiceReaders
グループのユーザーは、inspect
、read
、use
およびmanage
の操作を実行できます。inspect
に対して許可される操作:ListVirtualServiceRouteTable
は、仮想サービスで指定された仮想サービス・ルート表をリストします。read
に対して許可される操作:GetVirtualServiceRouteTable
。特定の仮想サービス・ルート表の詳細を取得します。manage
の操作を許可します:UpdateVirtualServiceRouteTable
。特定の仮想サービス・ルート表の詳細を更新します。ChangeVirtualServiceRouteTableCompartment
。特定の仮想サービス・ルート表のコンパートメントを変更します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
MESH_VIRTUAL_SERVICE_ROUTE_TABLE_LIST |
ListVirtualServiceRouteTable |
なし |
read |
|
|
なし |
use |
追加なし |
追加なし |
なし |
manage |
|
|
|
mesh- virtual- deployments
この表は、mesh-virtual-deployments
リソースの権限およびAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group VirtualDeploymentsReaders to read mesh-virtual-deployments in compartment B
このポリシーを使用すると、VirtualDeployementReaders
グループのユーザーはinspect
操作とread
操作の両方を実行できます。inspect
に対して許可される操作:ListVirtualDeployment
。指定された仮想サービスの仮想デプロイメントをリストします。read
に対して許可される操作:GetVirtualDeployment
。特定の仮想デプロイメントの詳細を取得します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
MESH_VIRTUAL_DEPLOYMENT_LIST |
ListVirtualDeployment |
なし |
read |
|
|
なし |
use |
|
|
なし |
manage |
|
|
|
(1) MESH_VIRTUAL_DEPLOYMENT_PROXY_CONFIG_READ
この権限により、プロキシは起動時にメタデータ・サービスからブートストラップ構成をフェッチできます。
メッシュ・イングレス・ゲートウェイ
この表は、mesh-ingress-gateways
リソースの権限およびAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group IngressGatewayUsers to use mesh-ingress-gateways in compartment B
このポリシーを使用すると、IngressGatewayUsers
グループのユーザーはinspect
、read
およびuse
操作を実行できます。inspect
に対して許可される操作:ListIngressGateways
。コンパートメントBのイングレス・ゲートウェイをリストします。read
に対して許可される操作:GetIngressGateway
。コンパートメントBおよびGetIngressGatewayProxyBootstrapConfig
内の特定のイングレス・ゲートウェイの詳細を取得します。use
に対して許可される操作:UpdateIngressGateway
。特定のイングレス・ゲートウェイの詳細を更新します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
MESH_INGRESS_GATEWAY_LIST |
ListIngressGateways |
なし |
read |
|
|
なし |
use |
|
|
なし |
manage |
|
|
|
(1) MESH_INGRESS_GATEWAY_PROXY_CONFIG_READ
この権限により、プロキシは起動時にメタデータ・サービスからブートストラップ構成をフェッチできます。
メッシュ- ingress- gateways- route- tables
この表は、mesh-ingress-gateways-route-tables
リソースの権限およびAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group IngressGatewayManagers to manage mesh-ingress-gateway-route-tables in compartment B
このポリシーでは、IngressGatewayReaders
グループのユーザーがinspect
、read
、use
およびmanage
の操作を実行します。inspect
に対して許可される操作:ListIngressGatewayRouteTables
は、特定のイングレス・ゲートウェイのイングレス・ゲートウェイ・ルート表をリストします。read
に対して許可される操作:GetIngressGatewayRouteTable
。特定のイングレス・ゲートウェイ・ルート表の詳細を取得します。manage
の操作を許可します:UpdateIngressGatewayRouteTable
。特定のイングレス・ゲートウェイ・ルート表の詳細を更新します。ChangeIngressGatewayRouteTableCompartment
。特定のイングレス・ゲートウェイ・ルート表のコンパートメントを変更します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
MESH_INGRESS_GATEWAY_ROUTE_TABLE_LIST |
ListIngressGatewayRouteTables |
なし |
read |
|
|
なし |
use |
追加なし |
追加なし |
なし |
manage |
|
|
|
メッシュ作業リクエスト
この表は、mesh-work-requests
リソースによって完全にカバーされる権限とAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group WorkRequestReaders to read mesh-work-requests in compartment B
このポリシーを使用すると、WorkRequestReaders
グループのユーザーはinspect
操作とread
操作の両方を実行できます。inspect
に対して許可される操作:ListWorkRequests
。指定されたコンパートメント内の作業リクエストをリストします。read
に対して許可される操作:GetWorkRequest
。コンパートメントB、ListWorkRequestErrors
およびListWorkRequestLogs
内の特定の作業リクエストの詳細を取得します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
MESH_WORK_REQUEST_LIST |
ListWorkRequests |
なし |
read |
|
|
なし |
use |
追加なし |
追加なし |
なし |
manage |
追加なし |
追加なし |
なし |
メッシュ アクセス ポリシー
この表は、mesh-access-policies
リソースの権限およびAPIを示しています。
表のセル内のプラス記号(+)
は、前のセルと比較して増分アクセスを示します。
allow group AccessPolicyReaders to read mesh-access-policies in compartment B
このポリシーを使用すると、AccessPolicyReaders
グループのユーザーはinspect
操作とread
操作の両方を実行できます。inspect
に対して許可される操作:ListAccessPolicies
は、コンパートメントBのアクセス・ポリシーをリストします。read
に対して許可される操作:GetAccessPolicy
。特定のアクセス・ポリシーの詳細を取得します。
動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
---|---|---|---|
inspect |
MESH_ACCESS_POLICY_LIST |
ListAccessPolicies |
なし |
read |
|
|
なし |
use |
追加なし |
|
なし |
manage |
|
|
|
API操作ごとに必要な権限
次の表に、サービス・メッシュAPI操作を論理的な順序で、リソース・タイプ別にグループ化して示します。
権限の詳細は、権限を参照してください。
API操作 | 操作の使用に必要な権限 |
---|---|
CreateMesh |
SERVICE_MESH_CREATE |
GetMesh |
SERVICE_MESH_READ |
UpdateMesh |
SERVICE_MESH_UPDATE |
DeleteMesh |
SERVICE_MESH_DELETE |
ListMeshes |
SERVICE_MESH_LIST |
ChangeMeshCompartment |
SERVICE_MESH_MOVE |
CreateVirtualService |
MESH_VIRTUAL_SERVICE_CREATE & MESH_ATTACH |
GetVirtualService |
MESH_VIRTUAL_SERVICE_READ |
UpdateVirtualService |
MESH_VIRTUAL_SERVICE_UPDATE |
DeleteVirtualService |
MESH_VIRTUAL_SERVICE_DELETE & MESH_DETACH |
ListVirtualService |
MESH_VIRTUAL_SERVICE_LIST |
ChangeVirtualServiceCompartment |
MESH_VIRTUAL_SERVICE_MOVE |
GetWorkRequest |
MESH_WORK_REQUEST_READ |
ListWorkRequests |
MESH_WORK_REQUEST_LIST |
ListWorkRequestErrors |
MESH_WORK_REQUEST_READ |
ListWorkRequestLogs |
MESH_WORK_REQUEST_READ |
CreateAccessPolicy |
MESH_ACCESS_POLICY_CREATE & MESH_ATTACH |
GetAccessPolicy |
MESH_ACCESS_POLICY_READ |
UpdateAccessPolicy |
MESH_ACCESS_POLICY_UPDATE |
DeleteAccessPolicy |
MESH_ACCESS_POLICY_DELETE & MESH_DETACH |
ListAccessPolicies |
MESH_ACCESS_POLICY_LIST |
ChangeAccessPolicyCompartment |
MESH_ACCESS_POLICY_MOVE |
CreateVirtualDeployment |
MESH_VIRTUAL_DEPLOYMENT_CREATE & MESH_VIRTUAL_SERVICE_ATTACH |
GetVirtualDeployment |
MESH_VIRTUAL_DEPLOYMENT_READ |
UpdateVirtualDeployment |
MESH_VIRTUAL_DEPLOYMENT_UPDATE |
DeleteVirtualDeployment |
MESH_VIRTUAL_DEPLOYMENT_DELETE & MESH_VIRTUAL_SERVICE_DETACH |
ListVirtualDeployment |
MESH_VIRTUAL_DEPLOYMENT_LIST |
ChangeVirtualDeploymentCompartment |
MESH_VIRTUAL_DEPLOYMENT_MOVE |
CreateVirtualServiceRouteTable |
MESH_VIRTUAL_SERVICE_ROUTE_TABLE_CREATE & MESH_VIRTUAL_SERVICE_ATTACH |
GetVirtualServiceRouteTable |
MESH_VIRTUAL_SERVICE_ROUTE_TABLE_READ |
UpdateVirtualServiceRouteTable |
MESH_VIRTUAL_SERVICE_ROUTE_TABLE _UPDATE |
DeleteVirtualServiceRouteTable |
MESH_VIRTUAL_SERVICE_ROUTE_TABLE_DELETE & MESH_VIRTUAL_SERVICE_DETACH |
ListVirtualServiceRouteTable |
MESH_VIRTUAL_SERVICE_ROUTE_TABLE_LIST |
ChangeVirtualServiceRouteTableCompartment |
MESH_VIRTUAL_SERVICE_ROUTE_TABLE_MOVE |
CreateIngressGateway |
MESH_INGRESS_GATEWAY_CREATE & MESH_ATTACH |
GetIngressGateway |
MESH_INGRESS_GATEWAY_READ |
UpdateIngressGateway |
MESH_INGRESS_GATEWAY_UPDATE |
DeleteIngressGateway |
MESH_INGRESS_GATEWAY_DELETE & MESH_DETACH |
ListIngressGateways |
MESH_INGRESS_GATEWAY_LIST |
ChangeIngressGatewayCompartment |
MESH_INGRESS_GATEWAY_MOVE |
CreateIngressGatewayRouteTable |
MESH_INGRESS_GATEWAY_ROUTE_TABLE_CREATE & MESH_INGRESS_GATEWAY_ATTACH |
GetIngressGatewayRouteTable |
MESH_INGRESS_GATEWAY_ROUTE_TABLE_READ |
UpdateIngressGatewayRouteTable |
MESH_INGRESS_GATEWAY_ROUTE_TABLE_UPDATE |
DeleteIngressGatewayRouteTable |
MESH_INGRESS_GATEWAY_ROUTE_TABLE_DELETE & MESH_INGRESS_GATEWAY_DETACH |
ListIngressGatewayRouteTables |
MESH_INGRESS_GATEWAY_ROUTE_TABLE_LIST |
ChangeIngressGatewayRouteTableCompartment |
MESH_INGRESS_GATEWAY_ROUTE_TABLE_MOVE |
GetVirtualDeploymentProxyBootstrapConfig |
MESH_VIRTUAL_DEPLOYMENT_PROXY_CONFIG_READ |
GetIngressGatewayProxyBootstrapConfig |
MESH_INGRESS_GATEWAY_PROXY_CONFIG_READ |
GetProxyVersion |
MESH_PROXY_DETAILS_READ |
StreamXDS |
MESH_VIRTUAL_DEPLOYMENT_PROXY_CONFIG_READ | MESH_INGRESS_GATEWAY_PROXY_CONFIG_READ |
サポートされている変数
サービス・メッシュは、すべての一般的な変数とここにリストされている変数をサポートします。
Oracle Cloud Infrastructureサービスでサポートされる一般的な変数の詳細は、すべてのリクエストの一般的な変数を参照してください。
変数 | 変数タイプ |
---|---|
target.mesh.id
|
OCID |
target.ingressgateway.id
|
OCID |
target.virtualservice.id
|
OCID |
ポリシーの例
例を使用して、サービス・メッシュIAMポリシーについて説明します。
-
グループ
MeshAdmins
のユーザーが、コンパートメントsales-app
内のすべてのサービス・メッシュ・リソースに対してすべての操作を実行することを許可します:allow group MeshAdmins to manage service-mesh-family in compartment sales-app
-
VirtualServiceManagers
グループは、仮想サービス・ルート表の作成、削除および更新など、メッシュ仮想サービスに対する管理操作を実行できます。allow group VirtualServiceManagers to use meshes in compartment sales-app allow group VirtualServiceManagers to manage mesh-virtual-services in compartment sales-app allow group VirtualServiceManagers to manage mesh-virtual-service-route-tables in compartment sales-app