OCIキャッシュIAMポリシー

OCIキャッシュに必要なIAMポリシーおよび権限の詳細について学習します。

ユーザー許可

クラスタを作成または管理するには、ユーザーは、OCIキャッシュ・リソースを作成および管理する権限に加えて、必要なネットワーキング・リソースを作成および管理するためのアクセス権が必要です。

次のポリシー例では、これらの権限を ClusterAdminsグループに付与します。

Allow group ClusterAdmins to manage redis-family in compartment <USER_COMPARTMENT>
Allow group ClusterAdmins to manage virtual-network-family in compartment <USER_COMPARTMENT>

これらの権限をより細かく構成できます(ポリシーの例を参照)。

リソース・タイプおよび権限

OCIキャッシュ・リソース・タイプおよび関連する権限のリスト。

すべてのOCIキャッシュ・リソースに権限を割り当てるには、redis-family集計タイプを使用します。詳細は、権限を参照してください。

次の表に、redis-familyのすべてのリソースを示します。

個別リソース・タイプ
redis-family
  • redis-clusters
  • oci-cache-users
  • oci-cache-configsets
  • redis-work-requests

<verb> redis-familyを使用するポリシーは、個々のリソース・タイプごとに個別の<verb> <resource-type>ステートメントでポリシーを記述することと同等です。

リソース・タイプ 権限
Redis- クラスタ
  • REDIS_CLUSTER_INSPECT
  • REDIS_CLUSTER_READ
  • REDIS_CLUSTER_USE
  • REDIS_CLUSTER_MANAGE
oci-cache-users
  • OCI_CACHE_USER_INSPECT
  • OCI_CACHE_USER_READ
  • OCI_CACHE_USER_USE
  • OCI_CACHE_USER_MANAGE
oci-cache-configsets
  • OCI_CACHE_CONFIGSET_INSPECT
  • OCI_CACHE_CONFIGSET_READ
  • OCI_CACHE_CONFIGSET_USE
  • OCI_CACHE_CONFIGSET_MANAGE
redis-workリクエスト
  • REDIS_WORK_REQUEST_INSPECT
  • REDIS_WORK_REQUEST_READ
  • REDIS_WORK_REQUEST_MANAGE

動詞とリソース・タイプの組合せの詳細

OCIキャッシュ・リソースの各動詞でカバーされる権限およびAPI操作を識別します。

アクセスのレベルは、inspectからreadusemanageの順に累積します。表のセルのプラス記号(+)は、前のセルと比較した場合に増分アクセスを示します。

アクセス権の付与の詳細は、権限を参照してください。

Redis- クラスタ
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect REDIS_CLUSTER_INSPECT ListRedisClusters なし
read

inspect+

REDIS_CLUSTER_READ

inspect+

GetRedisCluster

なし
use

read+

REDIS_CLUSTER_USE

read+

ChangeRedisClusterCompartment

ListAttachedOciCacheUsers

AttachOciCacheUsers (OCI_CACHE_USER_USEも必要)

DetachOciCacheUsers (OCI_CACHE_USER_USEも必要)

Generate Token for OCI Cache User (OCI_CACHE_USER_USEも必要)

UpdateRedisCluster (OCI_CACHE_CONFIGSET_USEも必要)

manage

use+

REDIS_CLUSTER_MANAGE

use+

DeleteRedisCluster

CreateRedisCluster (OCI_CACHE_CONFIGSET_USEも必要)
oci-cache-users
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect OCI_CACHE_USER_INSPECT ListOciCacheUsers なし
read

inspect+

OCI_CACHE_USER_READ

inspect+

GetOciCacheUser

なし
use

read+

OCI_CACHE_USER_USE

read+

ChangeOciCacheUserCompartment

UpdateOciCacheUser

AttachOciCacheUsers (REDIS_CLUSTER_USEも必要)

DetachOciCacheUsers (REDIS_CLUSTER_USEも必要)

Generate Token for OCI Cache User (REDIS_CLUSTER_USEも必要)

manage

use+

OCI_CACHE_USER_MANAGE

use+

CreateOciCacheUser

DeleteOciCacheUser

なし
oci-cache-configsets
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect OCI_CACHE_CONFIGSET_INSPECT ListOciCacheConfigSets

ListOciCacheDefaultConfigSets

なし
read

inspect+

OCI_CACHE_CONFIGSET_READ

inspect+

GetOciCacheConfigSet

GetOciCacheDefaultConfigSet

なし
use

read+

OCI_CACHE_CONFIGSET_USE

read+

ChangeOciCacheConfigSetCompartment

ListAssociatedOciCacheClusters

UpdateOciCacheConfigSet

CreateRedisCluster (REDIS_CLUSTER_MANAGEも必要)

UpdateRedisCluster (REDIS_CLUSTER_USEも必要)

manage

use+

OCI_CACHE_CONFIGSET_MANAGE

use+

CreateOciCacheConfigSet

DeleteOciCacheConfigSet

なし
redis-workリクエスト
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect REDIS_WORK_REQUEST_INSPECT ListWorkRequests なし
read

inspect+

REDIS_WORK_REQUEST_READ

inspect+

ListWorkRequestErrors

ListWorkRequestLogs

GetWorkRequest

なし
manage

use+

REDIS_WORK_REQUEST_MANAGE

use+

DeleteWorkRequest

なし

API操作ごとに必要な権限

次の表は、OCIキャッシュのAPI操作を論理的な順序で、リソース・タイプ別にグループ化したものです。

API操作 操作の使用に必要な権限
ListRedisClusters REDIS_CLUSTER_INSPECT
GetRedisCluster REDIS_CLUSTER_READ
CreateRedisCluster REDIS_CLUSTER_MANAGE, OCI_CACHE_CONFIGSET_USE
ListAttachedOciCacheUsers REDIS_CLUSTER_USE
UpdateRedisCluster REDIS_CLUSTER_USE, OCI_CACHE_CONFIGSET_USE
ChangeRedisClusterCompartment REDIS_CLUSTER_USE
DeleteRedisCluster REDIS_CLUSTER_MANAGE
ListOciCacheUsers OCI_CACHE_USER_INSPECT
GetOciCacheUser OCI_CACHE_USER_READ
CreateOciCacheUser OCI_CACHE_USER_MANAGE
UpdateOciCacheUser OCI_CACHE_USER_USE
ChangeOciCacheUserCompartment OCI_CACHE_USER_USE
DeleteOciCacheUser OCI_CACHE_USER_MANAGE
AttachOciCacheUsers REDIS_CLUSTER_USE, OCI_CACHE_USER_USE
DetachOciCacheUsers REDIS_CLUSTER_USE, OCI_CACHE_USER_USE
Generate Token for OCI Cache User REDIS_CLUSTER_USE, OCI_CACHE_USER_USE
ListOciCacheConfigSets OCI_CACHE_CONFIGSET_INSPECT
GetOciCacheConfigSet OCI_CACHE_CONFIGSET_READ
CreateOciCacheConfigSet OCI_CACHE_CONFIGSET_MANAGE
UpdateOciCacheConfigSet OCI_CACHE_CONFIGSET_USE
ChangeOciCacheConfigSetCompartment OCI_CACHE_CONFIGSET_USE
DeleteOciCacheConfigSet OCI_CACHE_CONFIGSET_MANAGE
ListAssociatedOciCacheClusters OCI_CACHE_CONFIGSET_USE
ListOciCacheDefaultConfigSets OCI_CACHE_CONFIGSET_INSPECT
GetOciCacheDefaultConfigSet OCI_CACHE_CONFIGSET_READ
ListWorkRequests REDIS_WORK_REQUEST_INSPECT
ListWorkRequestErrors REDIS_WORK_REQUEST_READ
ListWorkRequestLogs REDIS_WORK_REQUEST_READ
GetWorkRequest REDIS_WORK_REQUEST_READ
DeleteWorkRequest REDIS_WORK_REQUEST_MANAGE

ポリシーの例

次のポリシー・ステートメントを使用すると、グループClusterAdminsでOCIキャッシュ・リソースを使用および管理できます。
  • VCNs、コンパートメントおよびサブネットへの使用専用アクセスのみを許可します。
    • Allow group ClusterAdmins to use compartments in tenancy
    • Allow group ClusterAdmins to use vcns in compartment <USER_NETWORK_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to use subnet in compartment <USER_NETWORK_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to use network-security-groups in compartment <USER_NETWORK_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to use vcns in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
    ノート

    VCNsはネットワーク・コンパートメントにあり、クラスタはエンジニアリング・コンパートメントにあります。
  • エンジニアリング・コンパートメント内のVNICへの使用専用アクセスを許可します。たとえば:
    Allow group ClusterAdmins to use VNICs in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
  • プライベート・エンドポイントを作成または更新する権限の管理を許可します。たとえば:
    • Allow group ClusterAdmins to manage redis-family in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to manage redis-work-requests in compartment <USER_ENGINEERING_COMPARTMENT_NAME>
    • Allow group ClusterAdmins to manage vcns in compartment <USER_NETWORK_COMPARTMENT_NAME> where ALL{ ANY
      { request.operation = 'CreatePrivateEndpoint', request.operation = 'UpdatePrivateEndpoint', request.operation ='DeletePrivateEndpoint', request.operation = 'EnableReverseConnection', request.operation = 'ModifyReverseConnection', request.operation = 'DisableReverseConnection' }
      , ANY {request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster' } }
  • (オプション)Redisポートのトラフィックを許可します。たとえば:
    Allow group ClusterAdmins to manage security-lists in compartment <USER_NETWORK_COMPARTMENT_NAME> where ANY
    { request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster' }
    ノート

    ポリシーが指定されていない場合は、セキュリティ・ルールを追加し、ポート6379のTCPトラフィックを許可する必要があります。
次のポリシー・ステートメントを使用すると、グループClusterUsersはクラスタを使用できますが、他のアクセスは制限されます。
Allow group ClusterUsers to use redis-clusters in compartment <USER_COMPARTMENT>
次のポリシー・ステートメントを使用すると、グループCacheUsersでOCIキャッシュ・ユーザーを使用できます:
Allow group CacheUsers to use oci-cache-users in compartment <USER_COMPARTMENT>
次のポリシー・ステートメントでは、プライベート・エンドポイントをアタッチおよびデタッチするための管理権限が許可されます:
Allow group ClusterAdmins to manage vcns in compartment <USER_NETWORK_COMPARTMENT_NAME> where ALL{ ANY
{ request.operation = 'CreatePrivateEndpoint', request.operation = 'UpdatePrivateEndpoint', request.operation ='DeletePrivateEndpoint', request.operation = 'EnableReverseConnection', request.operation = 'ModifyReverseConnection', request.operation = 'DisableReverseConnection' }
, ANY {request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster', request.operation = 'AttachOciCacheUsers', request.operation = 'DetachOciCacheUsers' } }
次のポリシー・ステートメントは、Redisポートのトラフィックにアタッチおよびデタッチを許可します。
Allow group ClusterAdmins to manage security-lists in compartment <USER_NETWORK_COMPARTMENT_NAME> where ANY
{ request.operation = 'CreateRedisCluster', request.operation = 'DeleteRedisCluster' , request.operation = 'UpdateRedisCluster',  request.operation = 'AttachOciCacheUsers', request.operation = 'DetachOciCacheUsers'}
次のポリシー・ステートメントを使用すると、グループClusterConfigでOCIキャッシュ構成を使用できます:
Allow group ClusterConfig to use oci-cache-configsets in compartment <USER_COMPARTMENT>

ポリシーを初めて使用する場合は、ポリシーの開始および共通ポリシーを参照してください。