MSE支援阿里雲帳號給RAM使用者授予雲原生網關的操作許可權,避免因暴露阿里雲帳號密鑰造成的安全風險。本文介紹如何建立RAM使用者並給RAM使用者授權,授權後您就可以通過RAM使用者使用MSE雲原生網關。
使用情境
某企業開通了微服務引擎MSE雲原生網關服務,由於員工工作職責不同,對資源操作要求的權限也不同,現有如下需求:
鑒於安全或信任原因,不希望將雲帳號密鑰直接透露給員工,期望可以為員工相應的帳號授予許可權。
使用者帳號只能在授權的前提下操作資源,不需要進行獨立的計量計費,所有開銷均計入企業帳號名下。
隨時可以撤銷使用者帳號的許可權,也可以隨時刪除其建立的使用者帳號。
MSE雲原生網關作為一個託管型產品有開發和營運兩個角色,營運人員負責叢集和許可權的管理,開發人員負責配置和服務管理。
使用說明
您可以使用阿里雲帳號通過控制台和API為RAM使用者授權,本文介紹如何通過控制台操作。
步驟一:建立RAM使用者
使用阿里雲帳號登入RAM控制台並建立RAM使用者。
使用阿里雲帳號(主帳號)或Resource Access Management員登入RAM控制台。
在左側導覽列,選擇。
在使用者頁面,單擊建立使用者。

在建立使用者頁面的使用者帳號資訊地區,設定使用者基本資料。
登入名稱稱:可包含英文字母、數字、半形句號(.)、短劃線(-)和底線(_),最多64個字元。
顯示名稱:最多包含128個字元或漢字。
標籤:單擊
,然後輸入標籤鍵和標籤值。為RAM使用者綁定標籤,便於後續基於標籤的使用者管理。
說明單擊添加使用者,可以大量建立多個RAM使用者。
在訪問方式地區選中控制台訪問或使用永久 AccessKey 訪問。
控制台訪問:完成對登入安全的基本設定,包括自動產生或自訂登入密碼、是否要求下次登入時重設密碼以及是否要求開啟多因素認證。
說明自訂登入密碼時,密碼必須滿足您在中設定的密碼複雜度規則。關於如何設定密碼複雜度規則,請參見設定RAM使用者密碼強度。
使用永久 AccessKey 訪問:自動為RAM使用者產生存取金鑰(AccessKey),支援通過API或其他開發工具訪問阿里雲。
說明為了保障帳號安全,建議僅為RAM使用者選擇一種登入方式,避免RAM使用者離開組織後仍可以通過存取金鑰訪問阿里雲資源。
單擊確定。
步驟二:為RAM使用者添加許可權
在使用RAM使用者之前,需要為其添加相應許可權。
使用Resource Access Management員登入RAM控制台。
在左側導覽列,選擇。
在使用者頁面,單擊目標RAM使用者操作列的添加許可權。

您也可以選中多個RAM使用者,單擊使用者列表下方的添加許可權,為RAM使用者大量授權。
在新增授權面板,為RAM使用者添加許可權,然後單擊確認新增授權。
選擇權限原則類型,在文字框中輸入要添加的權限原則關鍵字,然後單擊搜尋到的權限原則,將其添加到右側的已選擇權限原則列表中。
權限類別型包括系統權限原則和自訂權限原則:
系統權限原則(粗粒度授權)
微服務引擎MSE目前支援兩種粗粒度的系統權限原則。
權限原則名稱
說明
AliyunMSEFullAccess
管理微服務引擎MSE的許可權,等同於阿里雲帳號的許可權,被授予該許可權的RAM使用者擁有控制台所有功能的操作許可權。
AliyunMSEReadOnlyAccess
微服務引擎MSE的唯讀許可權,被授予該許可權的RAM使用者具有阿里雲帳號所有資源的唯讀許可權。
說明建議給營運人員授予AliyunMSEFullAccess權限原則,由營運人員去建立和刪除資源。給開發人員授予AliyunMSEReadOnlyAccess權限原則,可以查看這些資源,但是不能刪除和建立。如果想更細粒度地控制開發人員的許可權,您可使用以下自訂權限原則。
自訂權限原則(細粒度授權)
如果您需要更細粒度的授權,您可以通過建立自訂策略來進行存取控制。建立自訂策略的具體步驟,請參見建立自訂權限原則。
樣本一:授予RAM使用者對雲原生網關執行個體gw-8090caa2a3ab447a8bc5fdf3********的唯讀許可權。
{ "Version": "1", "Statement": [ { "Action": [ "mse:Query*", "mse:List*", "mse:Get*", "mse:Select*", "mse:Pull*", "mse:GatewayBlackWhite*", "mse:GatewayHealthCheckList", "mse:GatewayQueryMonitor", "mse:UploadWasmFile" ], "Resource": "acs:mse:*:*:instance/gw-8090caa2a3ab447a8bc5fdf3********", "Effect": "Allow" }, { "Action": [ "mse:QueryDefaultAlertStatus", "mse:ListGatewayZone", "mse:ListUpgradableGatewayVersions", "mse:ListTagResources", "mse:ListGatewayIngressMigrateTask", "mse:ListEventRecords", "mse:GetEventFilterOptions", "mse:GetEventDetail", "mse:GetGatewaySelection", "mse:GetGatewayAlarms", "mse:GetGatewayMigrateNamespacedServices", "mse:GetGatewayIngressMigrateTaskDetail", "mse:GetPluginGuide", "mse:GetRegExpCheck", "mse:GetRegExpTest", "mse:CheckPluginLua" ], "Resource": "acs:mse:*:*:*", "Effect": "Allow" }, { "Action": [ "log:DescribeService", "log:ListProject", "log:GetProductDataCollection" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "arms:SearchContactGroup" ], "Resource": "*", "Effect": "Allow" } ] }樣本二:授予RAM使用者對雲原生網關執行個體gw-8090caa2a3ab447a8bc5fdf3********的讀寫權限。
{ "Version": "1", "Statement": [ { "Action": [ "mse:*" ], "Resource": "acs:mse:*:*:instance/gw-8090caa2a3ab447a8bc5fdf3********", "Effect": "Allow" }, { "Action": [ "mse:QueryDefaultAlertStatus", "mse:CreateDefaultAlert", "mse:ListGatewayZone", "mse:ListUpgradableGatewayVersions", "mse:ListEventRecords", "mse:GetEventFilterOptions", "mse:GetEventDetail", "mse:GetGatewaySelection", "mse:GetGatewayAlarms", "mse:GetGatewayMigrateNamespacedServices", "mse:GetPluginGuide", "mse:GetRegExpCheck", "mse:GetRegExpTest", "mse:CheckPluginLua", "mse:*TagResources", "mse:*CustomPlugin", "mse:*GatewayIngressMigrateTask*" ], "Resource": "acs:mse:*:*:*", "Effect": "Allow" }, { "Action": [ "log:DescribeService", "log:ListProject", "log:GetProductDataCollection", "log:OpenProductDataCollection" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "arms:SearchContactGroup" ], "Resource": "*", "Effect": "Allow" } ] }
在新增授權面板,確認授權成功後,單擊關閉。
後續操作
使用阿里雲帳號建立好RAM使用者後,即可將RAM使用者的登入名稱稱及密碼或者AccessKey資訊分發給其他使用者。其他使用者可以按照以下步驟使用RAM使用者登入控制台或調用API。
登入控制台
開啟RAM使用者登入頁面。
在RAM 使用者登入頁面,輸入RAM使用者名稱,單擊下一步,並輸入RAM使用者密碼,然後單擊登入。
說明RAM使用者登入名稱稱的格式為
<$username>@<$AccountAlias>或<$username>@<$AccountAlias>.onaliyun.com。<$AccountAlias>為帳號別名,如果沒有設定帳號別名,則預設值為阿里雲帳號的ID。在子使用者頁面上單擊有許可權的產品,即可存取控制台。
調用API
使用RAM使用者的AccessKey調用API。在代碼中使用RAM使用者的AccessKey ID和AccessKey Secret即可。
雲原生網關授權映射表
為了方便您自訂RAM權限原則,本文提供了MSE雲原生網關的授權映射表。
網關
Action | 許可權說明 | 是否為唯讀類許可權 |
AddGateway | 建立隨用隨付的雲原生網關 | 否 |
ListGateway | 查詢網關叢集列表 | 是 |
GetGatewayDetail | 查看單個網關詳情 | 是 |
GetGateway | 查詢單個網關資訊 | 是 |
ListGatewaySlb | 查詢網關入口SLB | 是 |
SelectGatewaySlb | 查詢已有的SLB | 否 |
AddGatewaySlb | 新關聯一個網關入口SLB | 否 |
DeleteGatewaySlb | 解除綁定一個網關入口SLB | 否 |
DeleteGateway | 刪除隨用隨付的雲原生網關 | 否 |
服務來源
Action | 許可權說明 | 是否為唯讀類許可權 |
ListServiceSource | 查詢服務來源列表 | 是 |
GetKubernetesSource | 查詢已有的ACK叢集 | 是 |
GetMseSource | 查詢已有的MSE註冊中心 | 是 |
AddServiceSource | 關聯服務來源 | 否 |
DeleteServiceSource | 解除綁定服務來源 | 否 |
PullServices | 查詢已有的服務列表 | 是 |
ImportServices | 建立或匯入服務 | 否 |
ListGatewayService | 查詢已訂閱服務列表 | 是 |
GetGatewayServiceDetail | 查詢服務詳情 | 是 |
AddGatewayServiceVersion | 添加服務版本 | 否 |
UpdateGatewayServiceVersion | 更新服務版本 | 否 |
DeleteGatewayServiceVersion | 刪除服務版本 | 否 |
UpdateGatewayServiceTrafficPolicy | 修改服務負載平衡策略 | 否 |
路由
Action | 許可權說明 | 是否為唯讀類許可權 |
ListGatewayRoute | 查詢網關路由列表 | 是 |
AddGatewayRoute | 建立網關路由 | 否 |
ApplyGatewayRoute | 發布網關路由 | 否 |
OfflineGatewayRoute | 下線網關路由 | 否 |
DeleteGatewayRoute | 刪除網關路由 | 否 |
GetGatewayRouteDetail | 查詢路由詳情 | 是 |
GetRateLimit | 查詢路由限流配置 | 是 |
AddRateLimit | 增加路由限流配置 | 否 |
UpdateRateLimit | 刪除路由限流配置 | 否 |
UpdateGatewayRouteHTTPRewrite | 更新路由重寫策略 | 否 |
UpdateGatewayRouteHeaderOp | 更新路由Header設定 | 否 |
UpdateGatewayRouteCORS | 更新路由跨域策略 | 否 |
UpdateGatewayRouteTimeout | 更新路由逾時策略 | 否 |
UpdateGatewayRouteRetry | 更新路由重試策略 | 否 |
認證網域名稱
Action | 許可權說明 | 是否為唯讀類許可權 |
ListGatewayDomain | 查詢關聯網域名稱列表 | 是 |
AddGatewayDomain | 關聯網域名稱 | 否 |
GetGatewayDomainDetail | 查詢網域名稱關聯詳情 | 是 |
UpdateGatewayDomain | 更新網域名關聯資訊 | 否 |
DeleteGatewayDomain | 解除綁定關聯網域名稱 | 否 |
ListSSLCert | 查詢已有認證 | 是 |
AddSSLCert | 關聯網域名稱認證 | 否 |
UpdateSSLCert | 更新網域名認證 | 是 |
其他
Action | 許可權說明 | 是否為唯讀類許可權 |
GetBlackWhiteList | 查詢黑白名單 | 是 |
AddBlackWhiteList | 添加黑白名單 | 否 |
UpdateBlackWhiteList | 更新黑白名單 | 否 |
AddGatewayAuth | 添加鑒權 | 否 |
ListGatewayAuth | 查詢鑒權列表 | 是 |
UpdateGatewayAuth | 更新鑒權 | 否 |
DeleteGatewayAuth | 刪除鑒權 | 否 |
AddAuthResource | 添加鑒權Path | 否 |
DeleteAuthResource | 刪除鑒權Path | 否 |