Todos os produtos
Search
Central de documentação

Resource Orchestration Service:GenerateTemplatePolicy

Última atualização: Sep 24, 2026

Gera as informações de política necessárias para um modelo especificado.

Descrição da operação

Se as políticas exigidas pelo modelo incluírem o Enterprise Distributed Application Service (EDAS), você deve fazer login na sua conta Alibaba Cloud e atualizar as permissões do RAM para os usuários do Resource Access Management (RAM) que necessitam de autorização.

Este tópico fornece um exemplo de como gerar políticas de acesso para um modelo cujo ID é 5ecd1e10-b0e9-4389-a565-e4c15efc****.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

A tabela abaixo descreve a autorização necessária para chamar esta API. Você pode defini-la em uma política do Resource Access Management (RAM). As colunas da tabela estão detalhadas abaixo:

  • Ação: As ações que podem ser usadas no elemento Action das instruções de política de permissão do RAM para conceder permissões para executar a operação.

  • API: A API que você pode chamar para executar a ação.

  • Nível de acesso: O nível de acesso predefinido concedido para cada API. Valores válidos: create, list, get, update e delete.

  • Tipo de recurso: O tipo de recurso que suporta autorização para executar a ação. Indica se a ação suporta permissão em nível de recurso. O recurso especificado deve ser compatível com a ação. Caso contrário, a política será ineficaz.

    • Para APIs com permissões em nível de recurso, os tipos de recursos obrigatórios são marcados com um asterisco (*). Especifique o Nome de Recurso Alibaba Cloud (ARN) correspondente no elemento Resource da política.

    • Para APIs sem permissões em nível de recurso, é exibido como Todos os Recursos. Use um asterisco (*) no elemento Resource da política.

  • Chave de condição: As chaves de condição definidas pelo serviço. A chave permite controle granular, aplicando-se somente a ações ou a ações associadas a recursos específicos. Além das chaves de condição específicas do serviço, o Alibaba Cloud fornece um conjunto de chaves de condição comuns aplicáveis a todos os serviços compatíveis com RAM.

  • Ação dependente: As ações dependentes necessárias para executar a ação. Para concluir a ação, o usuário RAM ou a função RAM deve ter permissões para executar todas as ações dependentes.

Ação

Nível de acesso

Tipo de recurso

Chave de condição

Ação dependente

ros:GenerateTemplatePolicy

list

Template.

acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}

Nenhuma Nenhuma

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

TemplateURL

string

Não

A URL do arquivo que contém o corpo do modelo. A URL deve apontar para um modelo localizado em um servidor web (HTTP ou HTTPS) ou em um bucket do OSS (por exemplo, oss://ros/template/demo ou oss://ros/template/demo?RegionId=cn-hangzhou). O tamanho máximo do modelo é de 524.288 bytes.

Nota

Se a região do OSS não for especificada, a região especificada pelo parâmetro RegionId será usada por padrão.

Você pode especificar apenas um dos seguintes parâmetros: TemplateBody, TemplateURL e TemplateId. O comprimento máximo da URL é de 1.024 bytes.

oss://ros/template/demo

TemplateBody

string

Não

A estrutura do corpo do modelo. O comprimento é de 1 a 524.288 bytes. Se o comprimento for grande, recomendamos que você use HTTP POST com o parâmetro body para enviar o parâmetro no corpo da solicitação, a fim de evitar falhas na solicitação causadas por uma URL excessivamente longa.

Você pode especificar apenas um dos seguintes parâmetros: TemplateBody, TemplateURL e TemplateId.

{"ROSTemplateFormatVersion":"2015-09-01"}

TemplateId

string

Não

O ID do modelo. Modelos compartilhados e modelos privados são suportados.
Você pode especificar apenas um dos seguintes parâmetros: TemplateBody, TemplateURL e TemplateId.

5ecd1e10-b0e9-4389-a565-e4c15efc****

TemplateVersion

string

Não

A versão do modelo. Este parâmetro entra em vigor apenas quando TemplateId é especificado.

v1

OperationTypes

array

Não

Os tipos de operação para os quais as informações de política são geradas.

string

Não

Os tipos de operação para os quais as informações de política são geradas. Valores válidos:

  • CreateStack: chama CreateStack para criar uma pilha.

  • UpdateStack: chama UpdateStack para atualizar uma pilha.

  • DeleteStack: chama DeleteStack para excluir uma pilha.

  • DetectStackDrift: chama DetectStackDrift para executar a detecção de desvio em uma pilha.

  • ListStackOperationRisks: chama ListStackOperationRisks com o parâmetro OperationType definido como DeleteStack para listar os riscos de exclusão de uma pilha.

  • GetTemplateEstimateCost: chama GetTemplateEstimateCost para consultar o custo estimado de criação de recursos no modelo.

  • GetTemplateParameterConstraints: chama GetTemplateParameterConstraints para consultar os valores dos parâmetros do modelo.

  • ImportResourcesToStack: chama CreateChangeSet com ChangeSetType definido para importar recursos para uma pilha.

  • SignalResource: envia um sinal para uma pilha.

Nota

Valor padrão: todos os valores válidos.

["CreateStack"]

Parameters

array<object>

Não

Os parâmetros de entrada. Os parâmetros de entrada definem os parâmetros que devem ser especificados quando você cria uma pilha usando este modelo. Esses parâmetros são usados para especificar os detalhes de cada criação de pilha, como o nome de usuário, a senha e os tipos de instância ECS específicos do ambiente.

object

Não

Os parâmetros de entrada. Os parâmetros de entrada definem os parâmetros que devem ser especificados quando você cria uma pilha usando este modelo. Esses parâmetros são usados para especificar os detalhes de cada criação de pilha, como o nome de usuário, a senha e os tipos de instância ECS específicos do ambiente.

ParameterKey

string

Não

O nome do parâmetro. Se você não especificar o nome e o valor de um parâmetro definido no modelo, o Resource Orchestration Service (ROS) usará o valor padrão especificado no modelo.
O valor máximo de N é 200. Valores de exemplo:

  • Parameters.1.ParameterKey: Name.

  • Parameters.2.ParameterKey: Netmode.

Nota

Parameters é opcional. Se você especificar Parameters, deverá especificar tanto Parameters.N.ParameterKey quanto Parameters.N.ParameterValue.

Domain

ParameterValue

string

Não

O valor do parâmetro definido no modelo. O valor máximo de N é 200.

Nota

Parameters é opcional. Se você especificar Parameters, Parameters.N.ParameterValue é obrigatório.

PostPaid

GenerateOptions

array

Não

GenerateOptions controla como a política de acesso do modelo é gerada. Este parâmetro é do tipo lista e permite especificar se os parâmetros do modelo devem ser resolvidos e o escopo de permissão da política gerada: ResolveParameters indica que a política é gerada após a resolução de condições e recursos com base nos Parameters especificados ou nos valores padrão dos parâmetros.

IgnoreParameters indica que a política é gerada sem resolver parâmetros, usando a lógica legada.

MandatoryPolicy indica que apenas as permissões mínimas necessárias para a execução do modelo são geradas.

FullPolicy indica que uma política de acesso completo é gerada.

ResolveParameters e IgnoreParameters são mutuamente exclusivos. MandatoryPolicy e FullPolicy são mutuamente exclusivos. MandatoryPolicy deve ser usado junto com ResolveParameters.

Se este parâmetro não for especificado, ResolveParameters + FullPolicy será usado por padrão quando Parameters for especificado. Caso contrário, IgnoreParameters + FullPolicy será usado por padrão.

string

Não

A opção de geração da política de acesso do modelo. Para valores válidos e restrições de combinação, consulte a descrição do parâmetro GenerateOptions.

MandatoryPolicy

Para obter mais informações sobre os parâmetros de solicitação comuns, consulte Parâmetros comuns.

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

object

O nó raiz.

Policy

object

As informações da política de acesso.

Version

string

O número da versão.

1

Statement

array<object>

As informações específicas da política de acesso.

array<object>

A instrução da política.

Effect

string

O efeito da autorização. Valores válidos:

  • Allow: Permitido.

  • Deny: Negado.

Allow

Resource

string

O objeto específico que é autorizado. Um asterisco (*) indica todos os recursos.

*

Action

array

A operação no recurso específico.

string

A operação no recurso específico.

[ "ram:PassRole" ]

Condition

object

A condição para que a autorização entre em vigor.

{ "StringEquals": { "acs:Service": "fc.aliyuncs.com" } }

RequestId

string

O ID da solicitação.

B288A0BE-D927-4888-B0F7-B35EF84B6E6

PolicyFunctions

array<object>

As configurações da função de política.

array<object>

O primeiro elemento na lista de funções de política.

Action

string

A ação na função de política.

accept

RequirementLevel

string

O nível de requisito da função de política.

ActionPolicyFunctions

array<object>

A lista de funções de política.

array<object>

A primeira subfunção de política da função de política raiz.

ResourceType

string

O tipo de recurso associado à função de política.

stack

LogicalResourceId

string

O ID do recurso lógico da função de política.

SLBLoadBalancer_00001

Functions

array<object>

A lista de funções de política.

object

A primeira função na lista de funções de política.

Function

string

A função na função de política.

notContains

RequirementLevel

string

O nível de requisito da função.

OperationType

string

O tipo de operação.

CreateStack

RelatedProperties

array

A lista de propriedades relacionadas.

string

O primeiro elemento na lista de propriedades relacionadas.

Exemplos

Resposta de sucesso

JSON formato

{
  "Policy": {
    "Version": "1",
    "Statement": [
      {
        "Effect": "Allow",
        "Resource": "*",
        "Action": [
          "[\n    \"ram:PassRole\"\n]"
        ],
        "Condition": {
          "StringEquals": {
            "acs:Service": "fc.aliyuncs.com"
          }
        }
      }
    ]
  },
  "RequestId": "B288A0BE-D927-4888-B0F7-B35EF84B6E6",
  "PolicyFunctions": [
    {
      "Action": "accept",
      "RequirementLevel": "",
      "ActionPolicyFunctions": [
        {
          "ResourceType": "stack",
          "LogicalResourceId": "SLBLoadBalancer_00001",
          "Functions": [
            {
              "Function": "notContains",
              "RequirementLevel": "",
              "OperationType": "CreateStack",
              "RelatedProperties": [
                ""
              ]
            }
          ]
        }
      ]
    }
  ]
}

Códigos de erro

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.