Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2024-08-01 GMT+08:00

Listado de políticas personalizadas

Función

Esta API se proporciona para que el administrador muestre todas las políticas personalizadas.

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

GET /v3.0/OS-ROLE/roles

Tabla 1 Parámetros de consulta

Parámetro

Obligatorio

Tipo

Descripción

page

No

Integer

Número de página para consulta de paginación, que debe usarse junto con per_page. El valor mínimo es de 1.

per_page

No

Integer

Número de registros de datos que se mostrarán en cada página. El valor varía de 1 a 300. Este parámetro debe usarse junto con page.

Parámetros de solicitud

Tabla 2 Parámetros en el encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

Content-Type

String

Rellene application/json;charset=utf8 en este campo.

X-Auth-Token

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ámetros de respuesta

Tabla 3 Parámetros en el cuerpo de respuesta

Parámetro

Tipo

Descripción

links

Object

Información de enlace de recurso.

roles

Array of objects

Información de política personalizada.

total_number

Integer

Número total de políticas personalizadas devueltas.

Tabla 5 roles

Parámetro

Tipo

Descripción

domain_id

String

ID de cuenta.

references

Integer

Número de referencias.

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.

description_cn

String

Descripción de la política personalizada en chino.

catalog

String

Catálogo de servicios.

name

String

Nombre de la política personalizada.

description

String

Descripción de la política personalizada.

links

Object

Enlace de recurso de la política personalizada.

id

String

ID de política personalizado.

display_name

String

Nombre para mostrar de la política personalizada.

type

String

Modo de visualización.

NOTA:
  • AX: el proyecto de servicio global
  • XA: proyectos específicos de la región
  • Establezca el modo de visualización de una política personalizada en AX o XA.

policy

Object

Contenido de la política personalizada.

Tabla 7 roles.policy

Parámetro

Tipo

Descripción

Version

String

Versión de política.

NOTA:
  • 1.0: Función definida por el sistema. Solo se proporciona un número limitado de roles de nivel de servicio para la autorización.
  • 1.1: Política. Una política define los permisos necesarios para realizar operaciones en un recurso de nube específico bajo ciertas condiciones.

Statement

Array of objects

Sentencia de la política. Una política puede contener un máximo de ocho sentencias.

Tabla 8 roles.policy.Statement

Parámetro

Tipo

Descripción

Action

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:
  • El formato de valor es Service name:Resource type:Operation, por ejemplo, vpc:ports:create.
  • Service name: indica el nombre del producto, como ecs, evs, o vpc. Solo se permiten letras minúsculas. Los tipos de recursos y las operaciones no distinguen entre mayúsculas y minúsculas. Puede utilizar un asterisco (*) para representar todas las operaciones.
  • En el caso de una política personalizada para agencias, este parámetro debe establecerse en "Action": ["iam:agencies:assume"].

Effect

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.

Condition

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

Array of strings

Recurso en la nube.

NOTA:
  • Formato: ::::. Por ejemplo, obs:::bucket:*. Se permiten asteriscos.
  • El segmento de región puede ser * o una región accesible para el usuario. El recurso especificado debe pertenecer al servicio correspondiente que realmente existe.
  • En el caso de una política personalizada para delegaciones, el tipo de este parámetro es Object, y el valor debe establecerse en "Resource": {"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]}.

Solicitud de ejemplo

Solicitud de consulta de una lista de políticas personalizadas

GET https://iam.myhuaweicloud.com/v3.0/OS-ROLE/roles

Ejemplo de respuesta

Código de estado: 200

La solicitud se ha realizado correctamente.

{
  "roles" : [ {
    "domain_id" : "d78cbac186b744899480f25bd022f...",
    "updated_time" : "1579229246886",
    "created_time" : "1579229246886",
    "description_cn" : "Description in Chinese",
    "catalog" : "CUSTOMED",
    "name" : "custom_d78cbac186b744899480f25bd022f468_1",
    "description" : "IAMDescription",
    "links" : {
      "self" : "https://iam.myhuaweicloud.com/v3/roles/93879fd90f1046f69e6e0b31c94d2..."
    },
    "id" : "93879fd90f1046f69e6e0b31c94d2...",
    "display_name" : "IAMCloudServicePolicy",
    "type" : "AX",
    "policy" : {
      "Version" : "1.1",
      "Statement" : [ {
        "Condition" : {
          "StringStartWith" : {
            "g:ProjectName" : [ "ap-southeast-1" ]
          }
        },
        "Action" : [ "obs:bucket:GetBucketAcl" ],
        "Resource" : [ "obs:*:*:bucket:*" ],
        "Effect" : "Allow"
      } ]
    }
  }, {
    "domain_id" : "d78cbac186b744899480f25bd022f...",
    "updated_time" : "1579229242358",
    "created_time" : "1579229242358",
    "description_cn" : "Description in Chinese",
    "catalog" : "CUSTOMED",
    "name" : "custom_d78cbac186b744899480f25bd022f468_0",
    "description" : "IAMDescription",
    "links" : {
      "self" : "https://iam.myhuaweicloud.com/v3/roles/f67224e84dc849ab954ce29fb4f47..."
    },
    "id" : "f67224e84dc849ab954ce29fb4f473...",
    "display_name" : "IAMAgencyPolicy",
    "type" : "AX",
    "policy" : {
      "Version" : "1.1",
      "Statement" : [ {
        "Action" : [ "iam:agencies:assume" ],
        "Resource" : {
          "uri" : [ "/iam/agencies/07805acaba800fdd4fbdc00b8f888..." ]
        },
        "Effect" : "Allow"
      } ]
    }
  } ],
  "links" : {
    "next" : null,
    "previous" : null,
    "self" : "https://iam.myhuaweicloud.com/v3/roles?domain_id=d78cbac186b744899480f25bd022f..."
  },
  "total_number" : 300
}

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