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 2023-02-16 GMT+08:00

Criação de uma política personalizada para agências

Função

Essa API é fornecida para que o administrador crie uma política personalizada para agências.

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

URI

POST /v3.0/OS-ROLE/roles

Parâmetros de solicitação

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

Parâmetro

Obrigatoriedade

Tipo

Descrição

Content-Type

Sim

String

Preencha application/json;charset=utf8 neste campo.

X-Auth-Token

Sim

String

Consulte Ações.

Tabela 2 Parâmetros no corpo da solicitação

Parâmetro

Obrigatoriedade

Tipo

Descrição

role

Sim

Object

Informações de políticas personalizadas.

Tabela 3 role

Parâmetro

Obrigatoriedade

Tipo

Descrição

display_name

Sim

String

Nome de exibição da política personalizada. O valor contém de 1 a 64 caracteres.

type

Sim

String

Modo de exibição.

NOTA:
  • AX: o projeto de serviço global
  • XA: projetos específicos da região
  • Defina o modo de exibição de uma política personalizada para AX ou XA.

description

Sim

String

Descrição da política personalizada.

description_cn

Não

String

Descrição da política personalizada em chinês.

policy

Sim

Object

Conteúdo da política personalizada.

Tabela 4 role.policy

Parâmetro

Obrigatoriedade

Tipo

Descrição

Version

Sim

String

Versão da política. Ao criar uma política personalizada, defina esse parâmetro como 1.1.

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.

Statement

Sim

Array of objects

Declaração da política. Uma política pode conter no máximo oito declarações.

Tabela 5 role.policy.Statement

Parâmetro

Obrigatoriedade

Tipo

Descrição

Action

Sim

Array of strings

Um item de ação é uma permissão de operação específica em um recurso.

NOTA:
  • No caso de uma política personalizada para agências, este parâmetro deve ser definido como "Action": ["iam:agencies:assume"].

Defina este parâmetro como iam:agencies:assume.

Effect

Sim

String

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

Opções:

  • Allow
  • Deny

Resource

Sim

Object

Recursos a serem gerenciados. Depois que uma conta estabelece várias relações de confiança entre ela e sua conta, você pode autorizar os usuários do IAM em diferentes grupos de usuários a gerenciar os recursos da parte delegante. Cada usuário do IAM só pode alternar para as agências às quais foi autorizado o acesso. Por exemplo:

"Resource": {"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]}
Tabela 6 role.policy.Statement.Resource

Parâmetro

Obrigatoriedade

Tipo

Descrição

uri

Sim

Array of strings

URI de um recurso delegado, que pode conter um máximo de 128 caracteres. Formato: /iam/agencies/delegation ID. Por exemplo:

"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]

Parâmetros de resposta

Tabela 7 Parâmetros no corpo da resposta

Parâmetro

Tipo

Descrição

role

Object

Informações de políticas personalizadas.

Tabela 8 role

Parâmetro

Tipo

Descrição

catalog

String

Catálogo de serviços.

display_name

String

Nome de exibição da política personalizada.

description

String

Descrição da política personalizada.

links

Object

Link de recurso da política personalizada.

policy

Object

Conteúdo da política personalizada.

description_cn

String

Descrição da política personalizada em chinês.

domain_id

String

ID da conta.

type

String

Modo de exibição.

NOTA:
  • AX: o projeto de serviço global
  • XA: projetos específicos da região
  • Defina o modo de exibição de uma política personalizada para AX ou XA.

id

String

ID de política personalizada.

name

String

Nome da política personalizada.

updated_time

String

Hora em que a política personalizada foi atualizada pela última vez.

created_time

String

Hora em que a política personalizada foi criada.

references

String

Número de referências.

Tabela 10 role.policy

Parâmetro

Tipo

Descriçã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.

Statement

Array of objects

Declaração da política. Uma política pode conter no máximo oito declarações.

Tabela 11 role.policy.Statement

Parâmetro

Tipo

Descrição

Action

Array of strings

Um item de ação é uma permissão de operação específica em um recurso.

NOTA:
  • 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 instruções Allow e Deny forem encontradas em uma política, a autenticação começará a partir das instruções Deny.

Opções:

  • Allow
  • Deny

Resource

Object

Recursos a serem gerenciados. Depois que uma conta estabelece várias relações de confiança entre ela e sua conta, você pode autorizar os usuários do IAM em diferentes grupos de usuários a gerenciar os recursos da parte delegante. Cada usuário do IAM só pode alternar para as agências às quais foi autorizado o acesso. Por exemplo:

"Resource": {"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]}
Tabela 12 role.policy.Statement.Resource

Parâmetro

Tipo

Descrição

uri

Array of strings

URI de um recurso delegado, que pode conter um máximo de 128 caracteres. Formato: /iam/agencies/delegation ID. Por exemplo:

"uri": ["/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"]

Exemplo de solicitação

POST https://iam.myhuaweicloud.com/v3.0/OS-ROLE/roles
{
    "role": {
        "display_name": "IAMAgencyPolicy",
        "type": "AX",
        "description": "IAMDescription",
        "description_cn": "Description in Chinese",
        "policy": {
            "Version": "1.1",
            "Statement": [
                {
                    "Effect": "Allow",
                    "Action": [
                        "iam:agencies:assume"
                    ],
                    "Resource": {
                        "uri": [
                            "/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"
                        ]
                    }
                }
            ]
        }
    }
}

Exemplo de resposta

Código de status: 201

A política personalizada para agências foi criada com êxito.

{
    "role": {
        "catalog": "CUSTOMED",
        "display_name": "IAMAgencyPolicy",
        "description": "IAMDescription",
        "links": {
            "self": "https://iam.myhuaweicloud.com/v3/roles/f67224e84dc849ab954ce29fb4f47f8e"
        },
        "policy": {
            "Version": "1.1",
            "Statement": [
                {
                    "Action": [
                        "iam:agencies:assume"
                    ],
                    "Resource": {
                        "uri": [
                            "/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c"
                        ]
                    },
                    "Effect": "Allow"
                }
            ]
        },
        "description_cn": "Description in Chinese",
        "domain_id": "d78cbac186b744899480f25bd02...",
        "type": "AX",
        "id": "f67224e84dc849ab954ce29fb4f47f8e",
        "name": "custom_d78cbac186b744899480f25bd022f468_0"
    }
}

Códigos de status

Código de status

Descrição

201

A política personalizada para agências foi criada com êxito.

400

Parâmetros inválidos.

401

Autenticação falhou.

403

Acesso negado.

500

Erro de servidor interno.

Códigos de erro

Nenhum