Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2024-08-31 GMT+08:00

Listagem de permissões

Função

Essa API é fornecida para que o administrador liste todas as permissões.

A API pode ser chamada usando o ponto de extremidade global e pontos de extremidade da região específica. Para pontos de extremidade do IAM, consulte Regiões e pontos de extremidade.

URI

GET /v3/roles

Tabela 1 Parâmetros de consulta

Parâmetro

Obrigatório

Tipo

Descrição

domain_id

Não

String

ID da conta. Para obter detalhes sobre como obter o ID da conta, consulte Obtenção de informações sobre conta, usuário do IAM, grupo, projeto, região e agência.

NOTA:
  • Se este parâmetro for especificado, somente as políticas personalizadas da conta serão retornadas.
  • Se esse parâmetro não for especificado, todas as permissões do sistema (incluindo políticas e funções definidas pelo sistema) serão retornadas.

permission_type

Não

String

Tipo de permissão do sistema. Esse parâmetro é válido somente quando domain_id é deixado em branco.

  • policy: política definida pelo sistema
  • role: função definida pelo sistema

name

Não

String

Nome de permissão para uso interno. Por exemplo, ccs_user é o nome interno da função CCS User para o Cloud Catalog Service (CCS).

Recomenda-se que o parâmetro display_name seja transferido em vez do parâmetro name.

display_name

Não

String

Nome da permissão ou condição de filtragem. O valor desse parâmetro pode ser o nome da permissão exibido no console ou incluído em Permissões do sistema.

  • Nome da permissão: por exemplo, se você definir esse parâmetro como ECS FullAccess, as informações sobre a permissão serão retornadas.
  • Condição de filtragem: por exemplo, se você definir esse parâmetro como Administrator, todas as permissões de administrador que atenderem às condições serão retornadas.

page

Não

Integer

Número de página para consulta de paginação, que deve ser usado junto com per_page. O valor mínimo é 1. Você pode usar esse parâmetro ao definir domain_id para consultar políticas personalizadas.

per_page

Não

Integer

Número de registros de dados a serem exibidos em cada página. O valor varia de 1 a 300, e o valor padrão é 300. Este parâmetro deve ser usado junto com page.

Um máximo de 300 permissões serão exibidas em cada página se os parâmetros page e per_page não forem transferidos.

type

Não

String

Modo de exibição da permissão. As opções incluem domain, project e all. domain significa retornar todas as permissões dos níveis AA e AX; project significa retornar todas as permissões dos níveis AA e XA; all significa retornar as permissões dos níveis AA, AX e XA.

NOTA:
  • AX: nível da conta.
  • XA: nível do projeto.
  • AA: tanto o nível da conta quanto o nível do projeto.
  • XX: nem o nível da conta nem o nível do projeto.

catalog

Não

String

Catálogo de serviços, que corresponde ao campo catalog em políticas. Você pode definir esse parâmetro para consultar políticas definidas pelo sistema e políticas personalizadas.

Parâmetros de solicitação

Tabela 2 Parâmetros no cabeçalho da solicitação

Parâmetro

Obrigatório

Tipo

Descrição

Content-Type

Sim

String

Preencha application/json;charset=utf8 nesse campo.

X-Auth-Token

Sim

String

Token de acesso emitido para um usuário para suportar sua identidade e permissões.

Para obter detalhes sobre as permissões exigidas pelo token, consulte Ações.

Parâmetros de resposta

Tabela 3 Parâmetros no corpo da resposta

Parâmetro

Tipo

Descrição

links

Object

Informações do link do recurso.

roles

Array of objects

Informações de permissão.

total_number

Integer

Número total de permissões.

Tabela 5 roles

Parâmetro

Tipo

Descrição

domain_id

String

ID da conta à qual a permissão pertence.

flag

String

Se esse parâmetro for definido como fine_grained, a permissão será uma política definida pelo sistema.

description_cn

String

Descrição da permissão em chinês.

catalog

String

Catálogo de serviço da permissão.

name

String

Nome de permissão para uso interno. Por exemplo, ccs_user é o nome interno da função CCS User para o CCS.

Esse parâmetro é transportado no token de um usuário, permitindo que o sistema determine se o usuário tem permissões para acessar um serviço de nuvem específico.

description

String

Descrição da permissão.

links

Object

Link de recurso de permissão.

id

String

ID de permissão.

display_name

String

Nome de permissão.

type

String

Modo de exibição da permissão.

NOTA:
  • AX: nível da conta.
  • XA: nível do projeto.
  • AA: tanto o nível da conta quanto o nível do projeto.
  • XX: nem o nível da conta nem o nível do projeto.
  • O modo de exibição de uma política personalizada só pode ser AX ou XA. Uma política personalizada deve ser exibida em um dos dois níveis.

policy

Object

Conteúdo da permissão.

updated_time

String

Hora em que a permissão foi atualizada pela última vez.

NOTA:

O valor é uma hora UTC no formato AAAA-MM-DDTHH:mm:ss.ssssssZ, por exemplo, 2023-06-28T08:56:33.710000Z. Para obter detalhes sobre os formatos de data e carimbo de data/hora, consulte ISO-8601.

created_time

String

Hora em que a permissão foi criada.

NOTA:

O valor é uma hora UTC no formato AAAA-MM-DDTHH:mm:ss.ssssssZ, por exemplo, 2023-06-28T08:56:33.710000Z. Para obter detalhes sobre os formatos de data e carimbo de data/hora, consulte ISO-8601.

Tabela 7 roles.policy

Parâmetro

Tipo

Descrição

Depends

Array of objects

Permissões dependentes.

Statement

Array of objects

Declaração da permissão.

Version

String

Versão da política.

NOTA:
  • 1.0: função definida pelo sistema. Apenas um número limitado de funções de nível de serviço é fornecido para autorização.
  • 1.1: política. Uma política define as permissões necessárias para executar operações em um recurso de nuvem específico sob determinadas condições.
Tabela 8 roles.policy.Depends

Parâmetro

Tipo

Descrição

catalog

String

Catálogo de serviço da permissão.

display_name

String

Nome de exibição da permissão.

Tabela 9 roles.policy.Statement

Parâmetro

Tipo

Descrição

Action

Array of strings

Permissões de operações específicas em um recurso. Para obter detalhes sobre as ações suportadas, consulte "Permissões e ações suportadas" na Referência de API de serviços em nuvem.

NOTA:
  • O formato do valor é Service name:Resource type:Operation, por exemplo, vpc:ports:create.
  • Service name: indica o nome do produto, como ecs, evs ou vpc. Somente letras minúsculas são permitidas. Os tipos de recursos e as operações não diferenciam maiúsculas de minúsculas. Você pode usar um asterisco (*) para representar todas as operações.
  • No caso de uma política personalizada para agências, este parâmetro deve ser definido como "Action": ["iam:agencies:assume"].

Effect

String

Efeito da permissão. O valor pode ser Allow ou Deny. Se as declarações Allow e Deny forem encontradas em uma política, a autenticação começará a partir das declarações Deny.

Opções:

  • Allow
  • Deny

Condition

Object

Condições para que a permissão entre em vigor. Para obter detalhes, consulte Criação de uma política personalizada.

NOTA:

Tome a condição na solicitação de exemplo como um exemplo, os valores da chave de condição (obs:prefix) e cadeia (public) devem ser iguais (StringEquals).

 "Condition": {
              "StringEquals": {
                "obs:prefix": [
                  "public"
                ]
              }
            }

Resource

Array of strings

Recursos em nuvem.

NOTA:
  • Formato: ::::. Por exemplo, obs:::bucket:*. Asteriscos são permitidos.
  • O segmento de região pode ser * ou uma região acessível ao usuário. O recurso especificado deve pertencer ao serviço correspondente que realmente existe.
  • No caso de uma política personalizada para agências, o tipo desse parâmetro é Object, e o valor deve ser definido como "Resource": {"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]}.
Tabela 10 roles.policy.Statement.Condition.operator

Parâmetro

Tipo

Descrição

attribute

Array of strings

Chave de condição. A chave de condição deve corresponder ao operador especificado. São permitidas no máximo 10 chaves de condição.

O tipo de parâmetro é uma matriz de cadeia de caracteres personalizada.

Exemplo de solicitação

Solicitação para consultar permissões

GET https://iam.myhuaweicloud.com/v3/roles

Exemplo de resposta

Código de status: 200

A solicitação foi bem-sucedida.

{
  "roles" : [ {
    "domain_id" : null,
    "description_cn" : "Description of the permission in Chinese", 
    "catalog" : "VulnScan",
    "name" : "wscn_adm",
    "description" : "Vulnerability Scan Service administrator of tasks and reports.",
    "links" : {
      "next" : null,
      "previous" : null,
      "self" : "https://iam.myhuaweicloud.com/v3/roles/0af84c1502f447fa9c2fa18083fbb87e"
    },
    "id" : "0af84c1502f447fa9c2fa18083fbb87e",
    "display_name" : "VSS Administrator",
    "type" : "XA",
    "policy" : {
      "Version" : "1.0",
      "Statement" : [ {
        "Action" : [ "WebScan:*:*" ],
        "Effect" : "Allow"
      } ],
      "Depends" : [ {
        "catalog" : "BASE",
        "display_name" : "Server Administrator"
      }, {
        "catalog" : "BASE",
        "display_name" : "Tenant Guest"
      } ]
    }
  }, {
    "domain_id" : null,
    "flag" : "fine_grained",
    "description_cn" : "Description of the permission in Chinese", 
    "catalog" : "CSE",
    "name" : "system_all_34",
    "description" : "All permissions of CSE service.",
    "links" : {
      "next" : null,
      "previous" : null,
      "self" : "https://iam.myhuaweicloud.com/v3/roles/0b5ea44ebdc64a24a9c372b2317f7e39"
    },
    "id" : "0b5ea44ebdc64a24a9c372b2317f7e39",
    "display_name" : "CSE Admin",
    "type" : "XA",
    "policy" : {
      "Version" : "1.1",
      "Statement" : [ {
        "Action" : [ "cse:*:*", "ecs:*:*", "evs:*:*", "vpc:*:*" ],
        "Effect" : "Allow"
      } ]
    }
  } ],
  "links" : {
    "next" : null,
    "previous" : null,
    "self" : "https://iam.myhuaweicloud.com/v3/roles"
  },
  "total_number" : 300
}

Códigos de status

Código de status

Descrição

200

A solicitação foi bem-sucedida.

400

Parâmetros inválidos.

401

Falha na autenticação.

403

Acesso negado.

Códigos de erro

Nenhum