透過指定範本產生範本所需的策略資訊。
介面說明
如果範本所需的策略中包含企業級分散式應用服務 EDAS(Enterprise Distributed Application Service),您需要登入阿里雲帳號,對需要授權的 RAM 使用者進行 RAM 權限升級。
本文將提供一個示例,為您介紹如何為範本 ID 為5ecd1e10-b0e9-4389-a565-e4c15efc****的範本產生權限策略。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
調試
授權資訊
|
操作 |
存取層級 |
資源類型 |
條件關鍵字 |
關聯操作 |
|
ros:GenerateTemplatePolicy |
list |
Template
|
無 | 無 |
請求參數
|
名稱 |
類型 |
必填 |
描述 |
樣本值 |
| TemplateURL |
string |
否 |
包含範本主體的檔案的位置。URL 必須指向位於 Web 伺服器(HTTP 或 HTTPS)或阿里雲 OSS 儲存空間(例如:oss://ros/template/demo、oss://ros/template/demo?RegionId=cn-hangzhou)中的範本,範本最大為 524,288 個位元組。 說明
如果 OSS 地域未指定,預設與介面參數 RegionId 相同。 您僅能指定 TemplateBody、TemplateURL、TemplateId 其中一個參數。 URL 的最大長度為:1024 個位元組。 |
oss://ros/template/demo |
| TemplateBody |
string |
否 |
範本的結構。長度為 1~524,288 個位元組。 如果長度較大,建議透過 HTTP POST+Body Param 的方式,將參數放在請求體中進行傳遞,避免 URL 過長而導致請求失敗。 您僅能指定 TemplateBody、TemplateURL、TemplateId 其中一個參數。 |
{"ROSTemplateFormatVersion":"2015-09-01"} |
| TemplateId |
string |
否 |
範本 ID。支援共用範本和私有範本。 |
5ecd1e10-b0e9-4389-a565-e4c15efc**** |
| TemplateVersion |
string |
否 |
範本版本。僅在指定 TemplateId 時生效。 |
v1 |
| OperationTypes |
array |
否 |
需要產生策略資訊的操作類型。 |
|
|
string |
否 |
需要產生策略資訊的操作類型。 取值:
說明
預設值為所有取值。 |
["CreateStack"] |
|
| Parameters |
array<object> |
否 |
輸入參數。 輸入參數中,定義了透過此範本建立資源棧時需要指定的參數,這些參數用來指定每次資源棧建立的細節,例如:使用者名稱、密碼、環境相關的 ECS 規格等。 |
|
|
object |
否 |
輸入參數。 |
||
| ParameterKey |
string |
否 |
參數的名稱。如果未指定範本中定義的參數名稱和參數值,ROS 將使用範本中指定的預設值。
說明
Parameters 為可選參數。如果需要指定 Parameters,則 Parameters.N.ParameterKey 和 Parameters.N.ParameterValue 必須同時指定。 |
Domain |
| ParameterValue |
string |
否 |
範本中已定義的參數的取值。N 的最大值為 200。 說明
Parameters 為可選參數。若指定了 Parameters,則 Parameters.N.ParameterValue 為必選參數。 |
PostPaid |
| GenerateOptions |
array |
否 |
GenerateOptions 用於控制範本權限策略的產生方式。該參數為列表類型,可指定是否解析範本參數以及產生策略的權限範圍: ResolveParameters 表示根據傳入的 Parameters 或參數預設值解析條件和資源後產生策略 IgnoreParameters 表示不解析參數並按相容舊邏輯產生策略 MandatoryPolicy 表示僅產生範本執行所需的必要權限 FullPolicy 表示產生完整權限策略 ResolveParameters 與 IgnoreParameters 互斥,MandatoryPolicy 與 FullPolicy 互斥,且 MandatoryPolicy 必須與 ResolveParameters 一起使用。 未指定時,若傳入 Parameters 預設使用 ResolveParameters + FullPolicy,否則預設使用 IgnoreParameters + FullPolicy。 |
|
|
string |
否 |
MandatoryPolicy |
關於公共請求參數的詳情,請參見公共參數。
返回參數
|
名稱 |
類型 |
描述 |
樣本值 |
|
object |
根節點或根目錄。 |
||
| Policy |
object |
權限策略資訊。 |
|
| Version |
string |
版本號。 |
1 |
| Statement |
array<object> |
具體權限策略資訊。 |
|
|
array<object> |
策略聲明的第一條。 |
||
| Effect |
string |
授權效力。取值:
|
Allow |
| Resource |
string |
被授權的具體對象。星號(*)表示所有資源。 |
* |
| Action |
array |
對具體資源的操作。 |
|
|
string |
對具體資源的操作。 |
[ "ram:PassRole" ] |
|
| Condition |
object |
授權生效的條件。 |
{ "StringEquals": { "acs:Service": "fc.aliyuncs.com" } } |
| RequestId |
string |
請求 ID。 |
B288A0BE-D927-4888-B0F7-B35EF84B6E6 |
| PolicyFunctions |
array<object> |
策略功能配置。 |
|
|
array<object> |
策略函數列表中的首個元素。 |
||
| Action |
string |
策略函數中的操作。 |
accept |
| RequirementLevel |
string |
策略函數的必要性級別。 |
|
| ActionPolicyFunctions |
array<object> |
策略功能列表。 |
|
|
array<object> |
根策略函數的第一個子策略函數。 |
||
| ResourceType |
string |
策略函数关联的资源类型 |
stack |
| LogicalResourceId |
string |
策略函数的逻辑资源 ID |
SLBLoadBalancer_00001 |
| Functions |
array<object> |
策略功能列表 |
|
|
object |
策略功能列表中的第一个函数 |
||
| Function |
string |
策略功能中的函数 |
notContains |
| RequirementLevel |
string |
功能要求级别 |
|
| OperationType |
string |
操作类型 |
CreateStack |
| RelatedProperties |
array |
关联属性列表 |
|
|
string |
关联属性列表中的第一个元素 |
樣本
正常返回樣本
JSON格式
{
"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": "",
"RequirementLevel": "",
"ActionPolicyFunctions": [
{
"ResourceType": "",
"LogicalResourceId": "",
"Functions": [
{
"Function": "",
"RequirementLevel": "",
"OperationType": "",
"RelatedProperties": [
""
]
}
]
}
]
}
]
}
錯誤碼
訪問錯誤中心查看更多錯誤碼。
變更歷史
更多資訊,參考變更詳情。