日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用 RAM 管理 API

API 網關結合阿里云訪問控制(RAM)來實現企業內多職員分權管理 API。API 提供者可以為員工建立子賬戶,并控制不同職員負責不同的 API 管理。

說明

若您無此業務場景,請跳過此章節。

  • 使用 RAM 可以允許子賬號,查看、創建、管理、刪除 API 分組、API、插件等。但子賬號不是資源的所有者,其操作權限隨時都可以被主賬號收回。

  • 可以根據文檔,利用標簽鑒權實現主子賬號的資源隔離。

  • 在查看本文前,請確保您已經詳讀了RAM幫助手冊和API 網關API 手冊。

第一部分:策略管理

授權策略(Policy),來描述授權的具體內容,授權內容主要包含效力(Effect)、資源(Resource)、對資源所授予的操作權限(Action)以及限制條件(Condition)這幾個基本元素。

1. 系統授權策略

API 網關已經預置了兩個系統權限,AliyunApiGatewayFullAccess和AliyunApiGatewayReadOnlyAccess,可以到 RAM控制臺-權限管理-權限策略 進行查看。 image

  • AliyunApiGatewayFullAccess:管理員權限,擁有主賬號下包含 API 分組、API、流控策略、應用等所有資源的管理權限。

  • AliyunApiGatewayReadOnlyAccess:可以查看主賬號下包含 API 分組、API、流控策略、應用等所有資源,但不可以操作。

2. 自定義授權策略

您可以根據需要自定義管理權限,支持更為精細化的授權,可以為某個操作,也可以是某個資源。如:API GetUsers 的編輯權限。可以在RAM控制臺-策略管理中選擇策略類型自定義策略,查看已經定義好的自定義授權。

第二部分:授權策略

授權策略是一組權限的集合,它以一種策略語言來描述。通過給用戶或群組附加授權策略,用戶或群組中的所有用戶就能獲得授權策略中指定的訪問權限。

示例:

{
  "Version": "1",
  "Statement": [
    {
  "Action": "apigateway:Describe*",
      "Resource": "*",
      "Effect": "Allow"
    }
  ]
}
                

此示例表示:允許所有的查看操作。

Action(操作名稱列表)格式為:

 "Action":"<service-name>:<action-name>"

其中:

  • service-name 為:阿里云產品名稱,請填寫 apigateway。

  • action-name 為:API 接口名稱,請參照下表,支持通配符*。

    "Action": "apigateway:Describe*" 表示所有的查詢操作。

    "Action": "apigateway:*" 表示 API 網關所有操作。

第三部分:Resource(操作對象列表)

Resource 通常指操作對象, API 網關中的 API 分組、流控策略、應用都被稱為 Resource,書寫格式:

acs:<service-name>:<region>:<account-id>:<relative-id>

其中:

  • acs:Alibaba Cloud Service 的首字母縮寫,表示阿里云的公有云平臺。

  • service-name 為:阿里云產品名稱,請填寫 apigateway。

  • region:地區信息,可以使用通配符*號來代替,*表示所有區域。

  • account-id:賬號 ID,比如123456789012****,也可以用*代替。

  • relative-id:與 API 網關相關的資源描述部分,這部分的格式描述支持類似于一個文件路徑的樹狀結構。

格式:

acs:apigateway:$regionid:$accountid:apigroup/$groupId

示例:

acs:apigateway:*:*:apigroup/cbd157704e624ab58a204fd3e0b5ad79

請結合 API 網關的API 手冊來查看下表:

action-name

接口描述

資源(Resource)

CreateApiGroup

創建分組

acs:apigateway:$regionid:$accountid:apigroup/*

ModifyApiGroup

修改分組

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DeleteApiGroup

刪除分組

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DescribeApiGroups

查詢分組列表

acs:apigateway:$regionid:$accountid:apigroup/*

CreateApi

創建API

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DeployApi

發布API

acs:apigateway:$regionid:$accountid:apigroup/$groupId

AbolishApi

下線API

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DeleteApi

刪除API

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DescribeApis

查詢API列表

acs:apigateway:$regionid:$accountid:apigroup/*

CreatePlugin

創建插件

acs:apigateway:$regionid:$accountid:plugin/*

ModifyPlugin

修改插件

acs:apigateway:$regionid:$accountid:plugin/$pluginId

DeletePlugin

刪除插件

acs:apigateway:$regionid:$accountid:plugin/$pluginId

AttachPlugin

將插件綁定到API上

acs:apigateway:$regionid:$accountid:plugin/$pluginId

DetachPlugin

將插件和API解綁

acs:apigateway:$regionid:$accountid:plugin/$pluginId

DescribePluginsByApi

查詢API上綁定的插件列表

acs:apigateway:$regionid:$accountid:plugin/$pluginId

CreateApp

創建應用

acs:apigateway:$regionid:$accountid:app/*

ModifyApp

修改應用

acs:apigateway:$regionid:$accountid:app/$appId

DeleteApp

刪除應用

acs:apigateway:$regionid:$accountid:app/$appId

DescribeAppAttributes

查詢應用列表

acs:apigateway:$regionid:$accountid:app/$appId

SetApisAuthorities

給APP授權API訪問權限

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DescribeAuthorizedApps

查詢API授權列表

acs:apigateway:$regionid:$accountid:apigroup/$groupId

SetVpcAccess

添加VPC授權

acs:apigateway:$regionid:$accountid:vpcaccess/*

RemoveVpcAccess

刪除VPC授權

acs:apigateway:$regionid:$accountid:vpcaccess/*

DescribeVpcAccesses

查詢VPC授權

acs:apigateway:$regionid:$accountid:vpcaccess/*

DescribeInstances

查詢專享實例列表授權

acs:apigateway:$regionid:$accountid:instance/$instanceId

部分場景示例

授權所有API的查詢操作:

{
          "Version": "1",
          "Statement": [
            {
                      "Action": "apigateway:Describe*",
                      "Resource":"acs:apigateway:$regionid:$accountid:apigroup/*",
                      "Effect": "Allow"
            }
          ]
}                        

授權打了標簽 `version:v1` 的分組查詢操作:

{
	  "Version": "1",
	  "Statement": [
	    {
      		"Action": "apigateway:Describe*",
	      	"Resource":"acs:apigateway:$regionid:$accountid:apigroup/*",
	      	"Effect": "Allow",
                 "Condition": {
                        "StringEquals": {
                             "apigateway:tag/version": "v1"
                        }
                 }
             }
	  ]
}			

授權某個分組下所有API的管理操作:

{
          "Version": "1",
          "Statement": [
            {
                      "Action": "apigateway:*",
                      "Resource": [
                              "acs:apigateway:$regionid:$accountid:apigroup/$groupId",
                              "acs:apigateway:$regionid:$accountid:app/$appId",
                              "acs:apigateway:$regionid:$accountid:vpcaccess/*"
                      ],
                      "Effect": "Allow"
            }
          ]
}

備注:以上示例中,變量部分可以根據需要配置成*。