Genera la información de política que requiere una plantilla.
Si la información de la política está relacionada con Enterprise Distributed Application Service (EDAS), inicie sesión en su cuenta de Alibaba Cloud y otorgue los permisos obligatorios a los usuarios de RAM correspondientes.
En este ejemplo, se genera una política para una plantilla cuyo ID es 5ecd1e10-b0e9-4389-a565-e4c15efc****.
Depuración
Parámetros de solicitud
| Parámetro | Tipo | Obligatorio | Ejemplo | Descripción |
| Action | String | Sí | GenerateTemplatePolicy | La operación que desea ejecutar. Establezca el valor en GenerateTemplatePolicy. |
| TemplateURL | String | No | oss://ros/template/demo | URL del archivo que contiene el cuerpo de la plantilla. La URL debe apuntar a una plantilla ubicada en un servidor web HTTP o HTTPS, o en un bucket de Object Storage Service (OSS); por ejemplo, oss://ros/template/demo u oss://ros/template/demo?RegionId=cn-hangzhou. El cuerpo de la plantilla puede tener una longitud máxima de 524,288 bytes. Nota Si no especifica el ID de región del bucket de OSS, se utiliza el valor del parámetro RegionId. Solo puede especificar uno de los siguientes parámetros: TemplateBody, TemplateURL y TemplateId. La URL puede tener una longitud máxima de 1,024 bytes. |
| TemplateBody | String | No | {"ROSTemplateFormatVersion":"2015-09-01"} | Estructura que contiene el cuerpo de la plantilla. El cuerpo de la plantilla debe tener una longitud de entre 1 y 524,288 bytes. Si la longitud del cuerpo de la plantilla supera el límite superior, le recomendamos agregar parámetros al cuerpo de la solicitud HTTP POST para evitar fallos en la solicitud causados por URL excesivamente largas. Solo puede especificar uno de los siguientes parámetros: TemplateBody, TemplateURL y TemplateId. |
| TemplateId | String | No | 5ecd1e10-b0e9-4389-a565-e4c15efc**** | ID de la plantilla. Este parámetro aplica tanto a plantillas compartidas como privadas. Solo puede especificar uno de los siguientes parámetros: TemplateBody, TemplateURL y TemplateId. |
| TemplateVersion | String | No | v1 | Versión de la plantilla. Este parámetro solo surte efecto cuando se especifica el parámetro TemplateId. |
| OperationTypes.N | String | No | ["CreateStack"] | Tipo de operación N para la cual desea generar la información de la política. Valores válidos:
Nota El valor predeterminado es la combinación de todos los valores válidos. |
Para obtener más información sobre los parámetros de solicitud comunes, consulte Parámetros comunes.
Parámetros de respuesta
| Parámetro | Tipo | Ejemplo | Descripción |
| Policy | Object | Información de la política. |
|
| Version | String | 1 | Número de versión. |
| Statement | Array of Statement | Declaraciones contenidas en la política. |
|
| Effect | String | Allow | Efecto de la declaración. Valores válidos:
|
| Resource | String | * | Objeto que abarca la declaración. Un asterisco (*) indica todos los recursos. |
| Action | Array of String | [ "apigateway:CreateApi", "apigateway:DeleteApi","apigateway:DescribeApi","apigateway:ModifyApi"] | Operaciones que se ejecutan sobre el recurso especificado. |
| RequestId | String | B288A0BE-D927-4888-B0F7-B35EF84B6E6 | ID de la solicitud. |
Ejemplos
Solicitudes de ejemplo
http(s)://[Endpoint]/?Action=GenerateTemplatePolicy
&TemplateId=5ecd1e10-b0e9-4389-a565-e4c15efc****
&<Common request parameters>
Respuestas exitosas de ejemplo
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<Policy>
<Version>1</Version>
<Statement>
<Action>ecs:DescribeVpcs</Action>
<Action>ecs:DeleteVpc</Action>
<Resource>*</Resource>
<Effect>Allow</Effect>
</Statement>
<Statement>
<Action>vpc:CreateVpc</Action>
<Action>vpc:DescribeVpcs</Action>
<Action>vpc:ModifyVpcAttribute</Action>
<Action>vpc:TagResources</Action>
<Resource>*</Resource>
<Effect>Allow</Effect>
</Statement>
</Policy>
<RequestId>16AAEDEB-6273-405E-97D3-023EFD95DE03</RequestId>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"Policy" : {
"Version" : 1,
"Statement" : [ {
"Action" : [ "ecs:DescribeVpcs", "ecs:DeleteVpc" ],
"Resource" : "*",
"Effect" : "Allow"
}, {
"Action" : [ "vpc:CreateVpc", "vpc:DescribeVpcs", "vpc:ModifyVpcAttribute", "vpc:TagResources" ],
"Resource" : "*",
"Effect" : "Allow"
} ]
},
"RequestId" : "16AAEDEB-6273-405E-97D3-023EFD95DE03"
}
Códigos de error
Para obtener una lista de códigos de error, consulte Códigos de error del servicio.
|
HttpCode |
Código de error |
Mensaje de error |
Descripción |
|
400 |
StackValidationFailed |
{reason}. |
Mensaje de error devuelto porque la validación de la pila falló. reason indica la causa del error. |
|
404 |
TemplateNotFound |
The Tempalte ({ ID }) could not be found. |
Mensaje de error devuelto porque la plantilla especificada no existe. ID indica el ID de la plantilla. |
|
404 |
TemplateNotFound |
The Template { ID } with version { version } could not be found. |
Mensaje de error devuelto porque la plantilla o la versión de la plantilla no existe. ID indica el ID de la plantilla. version indica la versión de la plantilla. |