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.
Centro de ayuda> Identity and Access Management> Referencia de la API> API> Gestión de proyecto empresarial> Consulta de permisos de un usuario asociado directamente a un proyecto de empresa
Actualización más reciente 2022-11-08 GMT+08:00

Consulta de permisos de un usuario asociado directamente a un proyecto de empresa

Función

Esta API se utiliza para consultar los permisos de un usuario asociado directamente a un proyecto de empresa especificado.

Se puede llamar a la API utilizando tanto el endpoint global como los endpoint específicos de la región. Para los endpoints de IAM, consulte Regiones y endpoint.

URI

GET /v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles

Tabla 1 Parámetros de URI

Parámetro

Obligatorio

Tipo

Descripción

enterprise_project_id

String

ID de proyecto de empresa.

user_id

String

ID de usuario.

Parámetros de solicitud

Tabla 2 Parámetros en el encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Token autenticado con iam:permissions:listRolesForUserOnEnterpriseProject o Security Administrator.

Parámetros de respuesta

Código de estado: 200

Tabla 3 Parámetros en el cuerpo de respuesta

Parámetro

Tipo

Descripción

roles

Array of objects

Lista de roles.

Tabla 4 RolesItem

Parámetro

Tipo

Descripción

catalog

String

Catálogo de servicios del permiso.

display_name

String

Nombre para mostrar del permiso.

description

String

Descripción del permiso en inglés.

description_cn

String

Descripción del permiso en chino.

domain_id

String

ID de la cuenta a la que pertenece el permiso.

flag

String

Si este parámetro se establece en fine_grained, el permiso es una política definida por el sistema.

id

String

ID de permiso.

name

String

Nombre del permiso.

policy

object

Contenido del permiso.

type

String

Modo de visualización del permiso.

NOTA:
  • AX: Nivel de cuenta.
  • XA: Nivel de proyecto.
  • AA: Tanto a nivel de cuenta como a nivel de proyecto.
  • XX: Ni el nivel de cuenta ni el nivel de proyecto.
  • El modo de visualización de una política personalizada solo puede ser AX o XA. Se debe mostrar una política personalizada en cualquiera de los dos niveles.
Tabla 5 RolePolicy

Parámetro

Tipo

Descripción

Depends

Array of objects

Permisos de dependencia.

Statement

Array of objects

Declaración de la autorizació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.
Tabla 6 PolicyDepends

Parámetro

Tipo

Descripción

catalog

String

Catálogo de servicios del permiso.

display_name

String

Nombre para mostrar del permiso.

Tabla 7 PolicyStatement

Parámetro

Tipo

Descripción

Action

Array of strings

Permiso de operación específico en un recurso. Se permite un máximo de 100 acciones.

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 de la autorización. El valor puede ser Allow o Deny. Si las instrucciones Allow y Deny se encuentran en una política, la autenticación comienza desde las instrucciones Deny.

Condition

Object

Condiciones para que el permiso entre en vigor. Se permite un máximo de 10 condiciones.

Resource

Array of strings

Recurso en la nube. La matriz puede contener un máximo de 10 strings de recursos, y cada string no puede exceder de 128 caracteres.

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 agencias, el tipo de este parámetro es Object, y el valor debe establecerse en "Resource": {"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]}.

Ejemplo de la solicitud

GET https://iam.myhuaweicloud.com/v3.0/OS-PERMISSION/enterprise-projects/{enterprise_project_id}/users/{user_id}/roles

Ejemplo de la respuesta

Código de estado: 200

La solicitud fue exitosa.

{
  "roles" : [ {
    "display_name" : "Customed ECS Viewer",
    "description" : "The read-only permissions to all ECS resources, which can be used for statistics and survey.",
    "domain_id" : "9698542758bc422088c0c3eabfc30d...",
    "catalog" : "CUSTOMED",
    "policy" : {
      "Version" : "1.1",
      "Statement" : [ {
        "Action" : [ "ecs:*:get*", "ecs:*:list*", "ecs:blockDevice:use", "ecs:serverGroups:manage", "ecs:serverVolumes:use", "evs:*:get*", "evs:*:list*", "vpc:*:get*", "vpc:*:list*", "ims:*:get*", "ims:*:list*" ],
        "Effect" : "Allow"
      } ]
    },
    "id" : "24e7a89bffe443979760c4e9715c1...",
    "type" : "XA",
    "name" : "custom_9698542758bc422088c0c3eabfc30...."
  } ]
}

Códigos de estado

Código de estado

Descripción

200

La solicitud fue exitosa.

400

Error de parámetro.

401

Error de autenticación.

403

Acceso denegado.

404

No se encontraron el recurso solicitado.

500

El sistema no funciona normalmente.