Detalles de IAM sin dominios de identidad
En este tema, se tratan los detalles de la escritura de políticas para controlar el acceso a IAM.
Tipos de recursos
authentication
authentication-policies
compartments
credentials
domain
dynamic-groups
groups
group-memberships
iamworkrequest
identity-providers
network-sources
oauth2-clients
policies
regions
service-principal
tag-defaults
tag-namespaces
tagRules
tasdomain
tagNamespaces
tenancies
users
x
workrequest
Variables soportadas
IAM soporta todas las variables generales (consulte Variables generales para todas las solicitudes ), además de las adicionales que se muestran aquí:
Operaciones para este tipo de recurso... | Puede utilizar estas variables... | Tipo de variable | Comentarios |
---|---|---|---|
users
|
target.user.id
|
Entidad (OCID) | No disponible para utilizar con CreateUser. |
target.user.name
|
Cadena | ||
groups
|
target.group.id
|
Entidad (OCID) | No disponible para utilizar con CreateGroup. |
target.group.name
|
Cadena | ||
target.group.member
|
Booleana | True si request.user es miembro de target.group. | |
policies
|
target.policy.id
|
Entidad (OCID) | No disponible para utilizar con CreatePolicy. |
target.policy.name
|
Cadena | ||
compartments
|
target.compartment.id
|
Entidad (OCID) |
Para CreateCompartment, será el valor del compartimento principal (por ejemplo, el compartimento raíz). Se trata de una variable universal disponible para usar con cualquier solicitud en todos los servicios (consulte Variables generales para todas las solicitudes). |
target.compartment.name
|
Cadena | ||
tag-namespace
|
target.tag-namespace.id
|
Entidad (OCID) |
Esta variable solo se admite en sentencias que otorgan permisos para el tipo de recurso |
target.tag-namespace.name
|
Cadena |
Detalles de combinaciones de verbo + tipo de recurso
En las siguientes tablas, se muestran los permisos y las operaciones de API que abarca cada verbo. El nivel de acceso es acumulativo al recorrer la progresión inspect
> read
> use
> manage
. Por ejemplo, un grupo que puede utilizar un recurso también puede inspeccionar y leer ese recurso. Un signo más (+) en una celda de la tabla indica un acceso incremental en comparación con la celda directamente por encima, mientras que "no extra" indica que no hay acceso incremental.
Por ejemplo, el verbo read
para los compartimentos no abarca permisos ni operaciones de API adicionales en comparación con el verbo inspect
. El verbo use
incluye los mismos que el verbo read
, además del permiso COMPARTMENT_UPDATE y la operación de API UpdateCompartment
. El verbo manage
incluye los mismos permisos y operaciones de API que el verbo use
, además del permiso COMPARTMENT_CREATE y dos operaciones de API: CreateCompartment
y DeleteCompartment
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | AUTHENTICATION_POLICY_INSPECT |
|
ninguna |
read | no extra |
no extra |
ninguna |
use | no extra |
no extra |
ninguna |
manage | USE + AUTHENTICATION_POLICY_UPDATE |
USE +
|
ninguna |
Para mover un compartimento (es decir, utilizar la operación MoveCompartment
) debe pertenecer a un grupo que tenga permisos manage all-resources
en el compartimento principal compartido más bajo del compartimento actual y el compartimento de destino.
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | COMPARTMENT_INSPECT |
|
ninguna |
read | no extra |
no extra |
ninguna |
use | READ + COMPARTMENT_UPDATE |
READ +
|
ninguna |
manage | USE + COMPARTMENT_CREATE COMPARTMENT_DELETE COMPARTMENT_RECOVER |
USE +
|
ninguna |
El tipo de recurso credentials
hace referencia solo a las credenciales SMTP. Los permisos para trabajar con otras credenciales que se pueden agregar a un usuario (como tokens de autenticación, claves de API y claves secretas de cliente) se incluyen con permisos del recurso users
.
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | CREDENTIAL_INSPECT |
ListSmtpCredentials
|
ninguna |
read | no extra |
no extra |
ninguna |
use | no extra |
no extra |
ninguna |
manage | USE + CREDENTIAL_ADD CREDENTIAL_UPDATE CREDENTIAL_REMOVE |
USE +
|
ninguna |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | DYNAMIC_GROUP_INSPECT |
|
No extra |
read | no extra |
no extra |
no extra |
use | READ + DYNAMIC_GROUP_UPDATE |
READ +
|
No extra |
manage | USE + DYNAMIC_GROUP_CREATE DYNAMIC_GROUP_DELETE |
USE +
|
no extra |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | GROUP_INSPECT |
|
|
read | no extra |
no extra |
no extra |
use | READ + GROUP_UPDATE |
READ +
|
READ +
|
manage | USE + GROUP_CREATE GROUP_DELETE |
USE +
|
no extra |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | IDENTITY_PROVIDER_INSPECT |
|
ListIdpGroupMappings , GetIdpGroupMapping (también necesitan inspect groups )
|
read | no extra |
no extra |
no extra |
use | no extra |
no extra |
no extra |
manage | USE + IDENTITY_PROVIDER_UPDATE IDENTITY_PROVIDER_CREATE IDENTITY_PROVIDER_DELETE |
USE +
|
USE +
|
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | NETWORK_SOURCE_INSPECT |
|
No extra |
read | no extra |
no extra |
no extra |
use | READ + NETWORK_SOURCE_UPDATE |
READ +
|
No extra |
manage | USE + NETWORK_SOURCE_CREATE NETWORK_SOURCE_DELETE |
USE +
|
no extra |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | POLICY_READ |
|
ninguna |
read | no extra |
no extra |
ninguna |
use | no extra |
no extra Nota: La capacidad de actualizar políticas solo está disponible con |
ninguna |
manage | USE + POLICY_UPDATE POLICY_CREATE POLICY_DELETE |
USE +
|
ninguna |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | TAG_NAMESPACE_INSPECT |
|
ninguna |
read | no extra |
no extra |
ninguna |
use | READ + TAG_NAMESPACE_USE Nota: Para aplicar, actualizar o eliminar etiquetas definidas para un recurso, se debe otorgar a un usuario permisos sobre el recurso y permisos para utilizar el espacio de nombres de etiqueta. |
READ +
|
ninguna |
manage | USE + TAG_NAMESPACE_UPDATE TAG_NAMESPACE_CREATE TAG_NAMESPACE_MOVE TAG_NAMESPACE_DELETE |
USE +
|
ninguna |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | TAG_DEFAULT_INSPECT TAG_NAMESPACE_READ (Usar ambos permisos) |
|
ninguna |
read | no extra |
no extra |
ninguna |
use | no extra |
no extra |
ninguna |
manage | INSPECT + TAG_DEFAULT_CREATE TAG_DEFAULT_UPDATE TAG_DEFAULT_DELETE |
USE +
|
ninguna |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | TENANCY_INSPECT |
|
ninguna |
read | no extra |
no extra |
ninguna |
use | READ + TENANCY_UPDATE |
no extra |
ninguna |
manage | USE + TENANCY_UPDATE |
USE +
|
ninguna |
Tenga en cuenta que para trabajar con las credenciales SMTP para un usuario, debe tener permisos para el tipo de recurso credentials
.
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspect | USER_INSPECT |
|
GetUserGroupMembership (también necesita inspect groups )
|
read | INSPECT + USER_READ |
INSPECT +
|
no extra |
use | READ + USER_UPDATE |
READ +
|
READ +
|
manage | USE + USER_CREATE USER_DELETE USER_UNBLOCK USER_APIKEY_ADD USER_APIKEY_REMOVE USER_UIPASS_SET USER_UIPASS_RESET USER_SWIFTPASS_SET USER_SWIFTPASS_RESET USER_SWIFTPASS_REMOVE USER_AUTHTOKEN_SET USER_AUTHTOKEN_RESET USER_AUTHTOKEN_REMOVE USER_OAUTH2_CLIENT_CRED_CREATE USER_OAUTH2_CLIENT_CRED_UPDATE USER_OAUTH2_CLIENT_CRED_REMOVE USER_SECRETKEY_ADD USER_SECRETKEY_UPDATE USER_SECRETKEY_REMOVE USER_SUPPORT_ACCOUNT_LINK USER_SUPPORT_ACCOUNT_UNLINK USER_TOTPDEVICE_ADD USER_TOTPDEVICE_REMOVE USER_TOTPDEVICE_UPDATE |
USE +
|
no extra |
Permisos requeridos para cada operación de API
En la siguiente tabla, se muestran las operaciones de API en un orden lógico, agrupadas por tipo de recurso.
Para obtener más información sobre los permisos, consulte Permisos.
Operación de API | Permisos necesarios para utilizar la operación |
---|---|
ListRegions
|
TENANCY_INSPECT |
ListRegionSubscriptions
|
TENANCY_INSPECT |
CreateRegionSubscription
|
TENANCY_UPDATE |
GetTenancy
|
TENANCY_INSPECT |
GetAuthenticationPolicy
|
AUTHENTICATION_POLICY_INSPECT |
UpdateAuthenticationPolicy
|
AUTHENTICATION_POLICY_UPDATE |
ListAvailabilityDomains
|
COMPARTMENT_INSPECT |
ListFaultDomains
|
COMPARTMENT_INSPECT |
ListCompartments
|
COMPARTMENT_INSPECT |
GetCompartment
|
COMPARTMENT_INSPECT |
UpdateCompartment
|
COMPARTMENT_UPDATE |
CreateCompartment
|
COMPARTMENT_CREATE |
RecoverCompartment
|
COMPARTMENT_RECOVER |
DeleteCompartment
|
COMPARTMENT_DELETE |
MoveCompartment
|
No hay un permiso único asociado a la operación MoveCompartment . Esta operación requiere permisos manage all-resources en el compartimento principal compartido más bajo del compartimento actual y el compartimento de destino. |
GetWorkRequest
|
COMPARTMENT_READ |
ListUsers
|
USER_INSPECT |
GetUser
|
USER_INSPECT |
UpdateUser
|
USER_UPDATE |
UpdateUserState
|
USER_UPDATE y USER_UNBLOCK |
CreateUser
|
USER_CREATE |
DeleteUser
|
USER_DELETE |
CreateOrResetUIPassword
|
USER_UPDATE y USER_UIPASS_RESET |
ListApiKeys
|
USER_READ |
UploadApiKey
|
USER_UPDATE y USER_APIKEY_ADD |
DeleteApiKey
|
USER_UPDATE y USER_APIKEY_REMOVE |
ListAuthTokens
|
USER_READ |
UpdateAuthToken
|
USER_UPDATE y USER_AUTHTOKEN_RESET |
CreateAuthToken
|
USER_UPDATE y USER_AUTHTOKEN_SET |
DeleteAuthToken
|
USER_UPDATE y USER_AUTHTOKEN_REMOVE |
ListSwiftPasswords
|
USER_READ |
UpdateSwiftPassword
|
USER_UPDATE y USER_SWIFTPASS_RESET |
CreateSwiftPassword
|
USER_UPDATE y USER_SWIFTPASS_SET |
DeleteSwiftPassword
|
USER_UPDATE y USER_SWIFTPASS_REMOVE |
ListCustomerSecretKeys
|
USER_READ |
CreateSecretKey
|
USER_UPDATE y USER_SECRETKEY_ADD |
UpdateCustomerSecretKey
|
USER_UPDATE y USER_SECRETKEY_UPDATE |
DeleteCustomerSecretKey
|
USER_UPDATE y USER_SECRETKEY_REMOVE |
CreateOAuthClientCredential |
USER_UPDATE y USER_OAUTH2_CLIENT_CRED_CREATE |
UpdateOAuthClientCredential |
USER_UPDATE y USER_OAUTH2_CLIENT_CRED_UPDATE |
ListOAuthClientCredentials |
USER_READ |
DeleteOAuthClientCredential |
USER_UPDATE y USER_OAUTH2_CLIENT_CRED_REMOVE |
LinkSupportAccount |
USER_SUPPORT_ACCOUNT_LINK |
UnlinkSupportAccount |
USER_SUPPORT_ACCOUNT_UNLINK |
CreateSmtpCredential |
CREDENTIAL_ADD |
ListSmtpCredentials |
CREDENTIAL_INSPECT |
UpdateSmtpCredential |
CREDENTIAL_UPDATE |
DeleteSmtpCredential |
CREDENTIAL_REMOVE |
ListUserGroupMemberships
|
GROUP_INSPECT y USER_INSPECT |
GetUserGroupMembership
|
USER_INSPECT y GROUP_INSPECT |
AddUserToGroup
|
GROUP_UPDATE y USER_UPDATE |
RemoveUserFromGroup
|
GROUP_UPDATE y USER_UPDATE |
ListGroups
|
GROUP_INSPECT |
GetGroup
|
GROUP_INSPECT |
UpdateGroup
|
GROUP_UPDATE |
CreateGroup
|
GROUP_CREATE |
DeleteGroup
|
GROUP_DELETE |
ListDynamicGroups
|
DYNAMIC_GROUP_INSPECT |
GetDynamicGroup
|
DYNAMIC_GROUP_INSPECT |
UpdateDynamicGroup
|
DYNAMIC_GROUP_UPDATE |
CreateDynamicGroup
|
DYNAMIC_GROUP_CREATE |
DeleteDynamicGroup
|
DYNAMIC_GROUP_DELETE |
GetNetworkSource
|
NETWORK_SOURCE_INSPECT |
ListNetworkSources
|
NETWORK_SOURCE_INSPECT |
CreateNetworkSource
|
NETWORK_SOURCE_CREATE |
UpdateNetworkSource
|
NETWORK_SOURCE_UPDATE |
DeleteNetworkSource
|
NETWORK_SOURCE_DELETE |
ListPolicies
|
POLICY_READ |
GetPolicy
|
POLICY_READ |
UpdatePolicy
|
POLICY_UPDATE |
CreatePolicy
|
POLICY_CREATE |
DeletePolicy
|
POLICY_DELETE |
ListIdentityProviders
|
IDENTITY_PROVIDER_INSPECT |
GetIdentityProvider
|
IDENTITY_PROVIDER_INSPECT |
UpdateIdentityProvider
|
IDENTITY_PROVIDER_UPDATE |
CreateIdentityProvider
|
IDENTITY_PROVIDER_CREATE |
DeleteIdentityProvider
|
IDENTITY_PROVIDER_DELETE |
ListIdpGroupMappings
|
IDENTITY_PROVIDER_INSPECT y GROUP_INSPECT |
GetIdpGroupMapping
|
IDENTITY_PROVIDER_INSPECT y GROUP_INSPECT |
AddIdpGroupMapping
|
IDENTITY_PROVIDER_UPDATE y GROUP_UPDATE |
DeleteIdpGroupMapping
|
IDENTITY_PROVIDER_UPDATE y GROUP_UPDATE |
ListTagNamespaces
|
TAG_NAMESPACE_INSPECT |
ListTaggingWorkRequest
|
TAG_NAMESPACE_INSPECT |
ListTaggingWorkRequestErrors
|
TAG_NAMESPACE_INSPECT |
ListTaggingWorkRequestLogs
|
TAG_NAMESPACE_INSPECT |
GetTaggingWorkRequest
|
TAG_NAMESPACE_INSPECT |
GetTagNamespace
|
TAG_NAMESPACE_INSPECT |
CreateTagNamespace
|
TAG_NAMESPACE_CREATE |
UpdateTagNamespace
|
TAG_NAMESPACE_UPDATE |
ChangeTagNamespaceCompartment
|
TAG_NAMESPACE_MOVE |
CascadeDeleteTagNamespace
|
TAG_NAMESPACE_DELETE |
DeleteTagNamespace
|
TAG_NAMESPACE_DELETE |
ListTags
|
TAG_NAMESPACE_INSPECT |
BulkEditTags
|
TAG_NAMESPACE_INSPECT |
ListCostTrackingTags
|
TAG_NAMESPACE_INSPECT |
GetTag
|
TAG_NAMESPACE_INSPECT |
CreateTag
|
TAG_NAMESPACE_USE |
UpdateTag
|
TAG_NAMESPACE_USE |
DeleteTag
|
TAG_NAMESPACE_DELETE |
BulkDeleteTags
|
TAG_NAMESPACE_DELETE |
ListTagDefaults
|
TAG_DEFAULT_INSPECT |
GetTagDefault
|
TAG_DEFAULT_INSPECT |
CreateTagDefault
|
TAG_DEFAULT_MANAGE |
UpdateTagDefault
|
TAG_DEFAULT_MANAGE |
DeleteTagDefault
|
TAG_DEFAULT_MANAGE |