全部產品
Search
文件中心

Elastic Compute Service:避免使用主帳號,為不同職責子帳號成員授予不同許可權

更新時間:Nov 20, 2025

阿里雲主帳號是您在阿里雲註冊時建立的初始帳號,擁有對名下所有資源的完全系統管理權限。為保障賬戶安全,建議日常操作中避免使用主帳號,不要為主帳號建立 AccessKey,妥善保管主帳號密碼,並啟用MFA(多因素認證)。

安全風險

阿里雲主帳號具備對所有資源的最高許可權,使用主帳號可能會帶來安全風險:

  • 隨意破壞:一旦主帳號的憑證(密碼或AccessKey)泄露,攻擊者將獲得您雲上環境的最高許可權。可以刪除您的所有伺服器、竊取或勒索您的核心資料、植入後門程式、或利用您的資源進行挖礦等惡意活動,造成無法挽回的業務損失和資料泄露事故。

  • 違背核心安全原則:日常使用主帳號直接違背了最小許可權原則 (Principle of Least Privilege)。該原則要求任何使用者或系統都只應被授予完成其任務所必需的最少許可權。主帳號的許可權是無限的,遠超任何日常營運、開發所需。

  • 審計困難:當所有操作都由主帳號執行時,將很難追溯具體是哪位員工、哪個應用程式執行了某項敏感操作,給安全審計和事件響應帶來巨大挑戰。

  • 等保合規:實施使用者與角色的許可權分離、遵循最小許可權原則,並避免使用許可權集中的主帳號,是主流安全合規標準的基本要求,如 ISO/IEC 27001 和《資訊安全技術網路安全等級保護基本要求》等。

最佳實務

加強主帳號的保護

  1. 啟用多因子認證(MFA):為主帳號綁定或解除綁定虛擬MFA,在密碼認證基礎上增加動態驗證碼(如手機Token、硬體密鑰),防止密碼泄露後的未授權訪問。

  2. 嚴格管理主帳號登入行為:

  3. 禁用主帳號AccessKey:不使用主帳號AccessKey,建立RAM使用者並授予最小許可權。

  4. 定期審計與監控:通過Action Trail監控主帳號登入事件,定期檢查異常行為。

  5. 使用RAM子帳號替代日常操作:建立RAM使用者作為帳號管理員,並為不同角色建立獨立子帳號,按需授權。

合理規劃RAM帳號、配置存取控制策略

為實現精微調權限管理與最小許可權原則,建議根據職責劃分帳號、角色與許可權。以下以企業常見情境為例,根據職能建立帳號並綁定角色:

  1. 帳號管理員

    該帳號專用於建立 RAM 子帳號、角色,以及定義和分配存取控制許可權。可授予 AliyunRAMFullAccess 許可權。儘管該帳號無法直接操作其他雲產品資源,但其具備建立高許可權帳號的能力,因此屬於高敏感帳號。必須嚴格保護:

    • 不要為其建立 AccessKey;

    • 避免建立具有相同許可權的RAM角色;

    • 啟用MFA,並限制登入來源 IP。

  2. 資源管理員

    該帳號用於建立和管理 ECS 執行個體、VPC、vswitch、網卡、雲端硬碟、安全性群組、快照、鏡像等資源。可授予 AliyunECSFullAccess AliyunVPCFullAccessAliyunEIPFullAccess策略。若需為 ECS 執行個體綁定 RAM 角色,還需額外授權 sts:AssumeRole 操作許可權。

    擴充建議:若您的雲資源規模較大,建議通過資源群組進行資源隔離,並為每個資源群組建立獨立的 ECS 資源管理員帳號,實現橫向許可權分隔。
  3. 營運人員

    該帳號主要用於分配給使用者用於登入、操作ECS執行個體,開關機等,不賦予資源改配、網卡、磁碟等資源操作許可權。對於ECS使用者可以自訂RAM許可權:

    {
      "Version": "1",
      "Statement": [
        // 1. 查看資源狀態許可權(唯讀)
        {
          "Effect": "Allow",
          "Action": [
            // ECS資源查看
            "ecs:DescribeInstances",        // 查看執行個體狀態
            "ecs:DescribeInstanceStatus",   // 查詢執行個體狀態資訊<sup data-index='2'>14</sup>
            "ecs:DescribeNetworkInterfaces", // 查看網卡狀態<sup data-index='3'>24</sup>
            "ecs:DescribeDisks",            // 查看雲端硬碟狀態(推斷自文檔上下文)
            "ecs:DescribeSecurityGroups",   // 查看安全性群組狀態<sup data-index='4'>13</sup>
            "ecs:DescribeSecurityGroupReferences", // 查詢被授權安全性群組<sup data-index='5'>27</sup>
            // VPC/VSwitch查看
            "vpc:DescribeVpcs",             // 查詢VPC狀態<sup data-index='6'>22</sup>
            "vpc:DescribeVSwitches",        // 查詢VSwitch狀態<sup data-index='7'>15</sup>
            "vpc:DescribeVSwitchAttributes" // 查詢VSwitch詳細配置<sup data-index='8'>17</sup>
          ],
          "Resource": "*"  // 允許訪問所有資源
        },
        // 2. Workbench許可權(登入和讀取)
        {
          "Effect": "Allow",
          "Action": [
            "ecs-workbench:LoginInstance",  // Workbench登入執行個體許可權<sup data-index='9'>31</sup>
            "ecs:DescribeTerminalSessions"  // 查看Workbench會話記錄<sup data-index='10'>3</sup>
          ],
          "Resource": "*"
        },
        // 3. 雲助手許可權(讀取、登入、執行命令)
        {
          "Effect": "Allow",
          "Action": [
            // 雲助手讀取許可權
            "ecs:DescribeCommands",         // 查看命令列表<sup data-index='11'>3</sup>
            "ecs:DescribeInvocations",       // 查看命令執行記錄<sup data-index='12'>3</sup>
            "ecs:DescribeInvocationResults", // 查看命令執行結果<sup data-index='13'>3</sup>
            "ecs:DescribeCloudAssistantStatus", // 查詢雲助手狀態<sup data-index='14'>3</sup>
            // 雲助手執行命令許可權
            "ecs:InvokeCommand",             // 執行命令<sup data-index='15'>3</sup>
            "ecs:RunCommand"                 // 立即執行命令<sup data-index='16'>3</sup>
          ],
          "Resource": "*",
          // 限制以普通使用者身份執行命令(安全最佳實務)
          "Condition": {
            "StringNotEqualsIgnoreCase": {
              "ecs:CommandRunAs": ["system", "root"]  // 禁止使用root或system賬戶<sup data-index='17'>2</sup>
            }
          }
        }
      ]
    }

    說明:上述策略中 "Resource": "*" 表示可操作所有執行個體。為降低風險,

    建議

    • 通過資源群組或標籤(Tag)限制操作範圍;

    • 使用更細粒度的資源 ARN 替代萬用字元,實現按需授權。

  4. 應用角色

    程式也可能需要訪問雲端服務(如訪問OSS、SLS等),需要為程式建立專門的帳號/角色來使用,不可與人員混用帳號,不同程式間也不要混用帳號:

    • 程式使用的帳號需要禁止登入控制台。

    • 如果您的程式部署在ECS(包括Container Service)中,請不要使用AccessKey,推薦使用執行個體綁定角色更加安全。

使用CloudSSO認證帳號

如果您面臨以下情境,我們推薦使用 CloudSSO(雲 SSO) 來實現安全、集中的身份管理和存取控制。

  • 需要為多名員工建立具有相同許可權的 RAM 帳號。

  • 多人共用一個 RAM 帳號。

  • 擔心員工泄露雲平台憑據(如 AccessKey 或登入密碼)。

CloudSSO(Cloud Single Sign-On,單點登入)是阿里雲基於資來源目錄(Resource Directory, RD)推出的多帳號統一身份管理與存取控制服務。允許使用者用一組憑據一次登入後,訪問多個雲應用和服務而無需重複輸入帳號密碼。使用雲SSO統一管理企業中使用阿里雲的使用者,一次性配置企業身份管理系統與阿里雲的單點登入,並統一配置所有使用者對RD帳號的存取權限。

  • 無需持有雲憑據:員工不再需要知道阿里雲的登入密碼或 AccessKey,降低憑據泄露風險。

  • 統一身份認證:使用者使用企業內部帳號(如公司郵箱、AD 帳號)和密碼登入,體驗無縫整合。

  • 集中許可權管理:通過訪問配置(Permission Sets)統一為使用者或使用者組分配角色許可權,支援細粒度控制。

  • 支援標準協議:基於 SAML 2.0 協議與企業 IdP 整合,保障認證安全。

更多資訊,請參見開始使用雲SSO

合規能力

檢查:否存在雲主帳號的操作

ECS使用成熟度等級評估與洞察

  1. 前往ECS使用成熟度等級評估與洞察

  2. 選擇安全效能力頁簽,單擊檢查項避免使用主帳號進行日常功能操作(帳號安全),可以查看使用阿里雲主帳號登入、操作雲資源的情況,並可看到主帳號的高頻操作。

Action Trail

前期準備:建立跟蹤,並將事件投遞到Log ServiceSLS中。具體操作,請參見建立單帳號跟蹤建立多帳號跟蹤

操作步驟

  1. 前往Action Trail控制台,在左側導覽列,選擇事件 > 進階查詢

  2. 查詢範圍-跟蹤選擇已建立的跟蹤。

  3. 查詢範圍地區的模板庫頁簽,選擇系統模板 > 帳號/AK相關事件,選擇查詢主帳號登入控制台事件或者查詢主帳號AK的訪問事件

  4. 設定查詢事件的時間段,再單擊運行

    • Action Trail預設查詢7天的事件。

    • 您可以單擊右側的事件警示,為當前事件設定警示。具體操作,請參見建立自訂警示規則

    • 您可以對系統模板預設的SQL語句進行修改,然後單擊儲存,將其另存新檔自訂模板,進行二次應用。

  5. 查看事件的查詢結果。

    • 原始日誌:在原始日誌頁簽,單擊目標事件對應操作列的查看事件詳情,查看事件的基本資料和JSON格式。

    • 長條圖:在查詢長條圖頁簽,查看事件發生的長條圖。