Modificación de una directiva personalizada para servicios en la nube
Función
Esta API se proporciona para que el administrador modifique una política personalizada para los servicios en la nube.
Se puede invocar a la API utilizando tanto el punto de conexión global como los puntos de conexión específicos de la región. Para los puntos de conexión de IAM, consulte Regiones y puntos de conexión.
URI
PATCH /v3.0/OS-ROLE/roles/{role_id}
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
role_id |
Sí |
String |
ID de política personalizado. Para obtener más información sobre cómo obtener un ID de política personalizado, consulte ID de política personalizado. |
Parámetros de solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
Content-Type |
Sí |
String |
Rellene application/json;charset=utf8 en este campo. |
X-Auth-Token |
Sí |
String |
Token de acceso emitido a un usuario para acreditar su identidad y sus permisos. Para obtener más información sobre los permisos requeridos por el token, consulte Acciones. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
Sí |
Object |
Información de política personalizada. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
display_name |
Sí |
String |
Nombre para mostrar de la política personalizada. |
type |
Sí |
String |
Modo de visualización.
NOTA:
|
description |
Sí |
String |
Descripción de la política personalizada. |
description_cn |
No |
String |
Descripción de la política personalizada en chino. |
Sí |
Object |
Contenido de la política personalizada. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
Version |
Sí |
String |
Versión de política. Al crear una política personalizada, establezca este parámetro en 1.1.
NOTA:
|
Sí |
Array of objects |
Sentencia de la política. Una política puede contener un máximo de ocho sentencias. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
Action |
Sí |
Array of strings |
Permisos de operación específicos en un recurso. Para obtener más información sobre las acciones admitidas, consulte "Permisos y acciones admitidas" en la Referencia de API de servicios en la nube.
NOTA:
|
Effect |
Sí |
String |
Efectos del permiso. El valor puede ser Allow o Deny. Si las sentencias Allow y Deny se encuentran en una política, la autenticación comienza desde las sentencias Deny. Opciones:
|
Condition |
No |
Map<String,Map<String,Array<String>>> |
Condiciones para que el permiso entre en vigor. Para obtener más información, consulte Creación de una política personalizada.
NOTA:
Tome la condición en la solicitud de ejemplo como un ejemplo, los valores de la clave de condición (obs:prefix) y cadena (public) deben ser iguales (StringEquals). "Condition": { "StringEquals": { "obs:prefix": [ "public" ] } } |
Resource |
No |
Array of strings |
Recurso en la nube.
NOTA:
|
Parámetros de respuesta
Parámetro |
Tipo |
Descripción |
---|---|---|
Object |
Información de política personalizada. |
Parámetro |
Tipo |
Descripción |
---|---|---|
catalog |
String |
Catálogo de servicios. |
display_name |
String |
Nombre para mostrar de la política personalizada. |
description |
String |
Descripción de la política personalizada. |
Object |
Enlace de recurso de la política personalizada. |
|
Object |
Contenido de la política personalizada. |
|
description_cn |
String |
Descripción de la política personalizada en chino. |
domain_id |
String |
ID de cuenta. |
type |
String |
Modo de visualización.
NOTA:
|
id |
String |
ID de política personalizado. |
name |
String |
Nombre de la política personalizada. |
updated_time |
String |
Hora en la que se actualizó por última vez la política personalizada.
NOTA:
El valor es una hora UTC en el formato AAAA-MM-DDTHH:mm:ss.ssssssZ, por ejemplo, 2023-06-28T08:56:33.710000Z. Para obtener más información sobre los formatos de fecha y hora, consulte ISO-8601. |
created_time |
String |
Hora en la que se creó la política personalizada.
NOTA:
El valor es una hora UTC en el formato AAAA-MM-DDTHH:mm:ss.ssssssZ, por ejemplo, 2023-06-28T08:56:33.710000Z. Para obtener más información sobre los formatos de fecha y hora, consulte ISO-8601. |
references |
String |
Número de referencias. |
Parámetro |
Tipo |
Descripción |
---|---|---|
Version |
String |
Versión de política.
NOTA:
|
Array of objects |
Sentencia de la política. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
Action |
Sí |
Array of strings |
Permisos de operación específicos en un recurso. Para obtener más información sobre las acciones admitidas, consulte "Permisos y acciones admitidas" en la Referencia de API de servicios en la nube.
NOTA:
|
Effect |
Sí |
String |
Efectos del permiso. El valor puede ser Allow o Deny. Si las sentencias Allow y Deny se encuentran en una política, la autenticación comienza desde las sentencias Deny. Opciones:
|
Condition |
No |
Map<String,Map<String,Array<String>>> |
Condiciones para que el permiso entre en vigor. Para obtener más información, consulte Creación de una política personalizada.
NOTA:
Tome la condición en la solicitud de ejemplo como un ejemplo, los valores de la clave de condición (obs:prefix) y cadena (public) deben ser iguales (StringEquals). "Condition": { "StringEquals": { "obs:prefix": [ "public" ] } } |
Resource |
No |
Array of strings |
Recurso en la nube.
NOTA:
|
Solicitud de ejemplo
Solicitud para modificar la política personalizada IAMCloudServicePolicy para permitir que solo los proyectos cuyos nombres comiencen por ap-southeast-1 obtengan información de ACL sobre todos los buckets.
PATCH https://iam.myhuaweicloud.com/v3.0/OS-ROLE/roles/{role_id}
{ "role": { "display_name": "IAMCloudServicePolicy", "type": "AX", "description": "IAMDescription", "description_cn": "Description in Chinese", "policy": { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:bucket:GetBucketAcl" ], "Condition": { "StringStartWith": { "g:ProjectName": [ "ap-southeast-1" ] } }, "Resource": [ "obs:*:*:bucket:*" ] } ] } } }
Ejemplo de respuesta
Código de estado: 200
La solicitud se ha realizado correctamente.
{
"role": {
"catalog": "CUSTOMED",
"display_name": "IAMCloudServicePolicy",
"description": "IAMDescription",
"links": {
"self": "https://iam.myhuaweicloud.com/v3/roles/93879fd90f1046f69e6e0b31c94d2615"
},
"policy": {
"Version": "1.1",
"Statement": [
{
"Action": [
"obs:bucket:GetBucketAcl"
],
"Resource": [
"obs:*:*:bucket:*"
],
"Effect": "Allow",
"Condition": {
"StringStartWith": {
"g:ProjectName": [
"ap-southeast-1"
]
}
}
}
]
},
"description_cn": "Description in Chinese",
"domain_id": "d78cbac186b744899480f25bd0...",
"type": "AX",
"id": "93879fd90f1046f69e6e0b31c94d2615",
"name": "custom_d78cbac186b744899480f25bd022f468_1"
}
}
Códigos de estado
Código de estado |
Descripción |
---|---|
200 |
La solicitud se ha realizado correctamente. |
400 |
Parámetros no válidos. |
401 |
Error de autenticación. |
403 |
Acceso denegado. |
500 |
Error de servidor interno. |
Códigos de error
Ninguno