全部產品
Search
文件中心

Hologres:授予RAM使用者權限

更新時間:Jun 30, 2024

為RAM使用者授予所需資源的存取權限,以實現許可權最小化目標,並避免多個使用者共用阿里雲帳號密碼或存取金鑰,從而減少企業的訪問安全風險。本文將詳細介紹如何通過主帳號為RAM使用者指派適當的許可權,並解釋各項許可權的作用。

背景資訊

存取控制(Resource Access Management,簡稱RAM)是阿里雲提供的許可權管理系統。

RAM主要用於控制帳號系統的許可權。

您可以使用RAM在主帳號的許可權範圍內建立RAM使用者,並為不同的RAM使用者授予不同的許可權,例如購買或刪除執行個體、升降配執行個體資源、修改網路類型以及查看執行個體資訊等。

RAM使用者執行個體開發許可權的許可權控制如下:

  • 如果主帳號沒有授予RAM使用者權限,則RAM使用者無法在管理主控台查看或操作執行個體。

  • 主帳號可以直接授予RAM使用者執行個體的開發許可權。RAM使用者即使無法在管理主控台操作執行個體,也可以正常串連開發工具進行資料開發。詳情請參見授予RAM使用者執行個體的開發許可權

授予RAM使用者權限

  1. 使用Resource Access Management員登入RAM控制台

  2. 在左側導覽列,選擇身份管理 > 使用者

  3. 使用者頁面,單擊目標RAM使用者操作列的添加許可權

    image

    您也可以選中多個RAM使用者,單擊使用者列表下方的添加許可權,為RAM使用者大量授權。

  4. 新增授權。

    配置添加許可權對話方塊的各項參數。

    說明
    • 由於HoloWeb無法歸屬某個資源群組,因此,通過指定資源群組進行授權的方式暫不支援登入並使用HoloWeb。

    • 下文所提及的許可權僅代表RAM使用者是否能登入並使用HoloWeb。若RAM使用者需要串連Hologres執行個體並使用,您可前往執行個體詳情頁中進行授權。詳情請參見授予RAM使用者執行個體的開發許可權

    1. 選擇資源範圍。

    2. 選擇授權主體。

      授權主體即需要添加許可權的RAM使用者。系統會自動選擇當前的RAM使用者。

    3. 選擇權限原則。

      權限原則是一組存取權限的集合,分為以下兩種。支援批量選中多條權限原則。

      • 系統策略:由阿里雲建立,策略的版本更新由阿里雲維護,使用者只能使用不能修改。更多資訊,請參見支援RAM的雲端服務

        說明

        系統會自動標識出高風險系統策略(例如:AdministratorAccess、AliyunRAMFullAccess等),授權時,盡量避免授予不必要的高風險權限原則。

        為RAM使用者授予以下權限原則,RAM使用者就會擁有所有操作的許可權,如下表所示。

        權限原則

        描述

        AliyunHologresFullAccess

        管理Hologres服務的許可權。

        說明

        該權限原則不包含執行個體的使用許可權,仍需Superuser在執行個體中建立使用者後才可以登入並使用Hologres執行個體,詳情請參見與執行個體使用相關的RAM使用者權限問題

        設定該許可權後,RAM使用者擁有的許可權包括:

        • 查看管理主控台所有執行個體資訊的許可權,包括執行個體列表、執行個體詳情、監控等頁面。

        • 可執行涉及賬單的操作,包括對執行個體購買、升降配、續約、停機、刪除等操作。

        • 登入並使用HoloWeb的許可權。

        • RAM使用者購買執行個體後將會成為執行個體的Superuser,擁有執行個體的所有許可權(阿里雲帳號也一併成為執行個體的Superuser)。

        • 對於阿里雲帳號已經建立的執行個體,RAM使用者預設沒有執行個體的許可權,需要阿里雲帳號在執行個體內給RAM使用者授予相應的許可權,詳情請參見授予RAM使用者執行個體的開發許可權

        • 無管理主控台使用者管理頁面展示所有使用者的許可權,需要授予listuser的許可權(AliyunRAMReadOnlyAccess),才可以在管理主控台的使用者管理查看使用者資訊。

        AliyunBSSOrderAccess

        在費用中心(BSS)查看、支付以及取消訂單的許可權。

        設定該許可權後,子帳號可以在管理主控台升級或降級執行個體的配置,以及為執行個體續約。

        AliyunRAMReadOnlyAccess

        唯讀存取控制(RAM)的許可權。

        設定該許可權後,RAM使用者在HoloWeb的使用者管理頁面新增使用者時可以展示當前阿里雲帳號下的所有RAM使用者和RAM角色。

        AliyunHologresReadOnlyAccess

        唯讀管理Hologres的許可權。

        設定該許可權後,RAM使用者擁有的許可權包括:

        • 在管理主控台查看執行個體所有資訊的許可權,包括執行個體列表、執行個體詳情、監控指標等資訊。

        • 登入並使用HoloWeb的許可權。

        • 無執行個體購買、升降配等涉及費用的操作許可權。

        • 無執行個體的操作許可權,需要阿里雲帳號給RAM使用者授予執行個體層級的許可權。

        • 不能在管理主控台或HoloWeb使用者管理展示當前阿里雲帳號下的所有RAM使用者,如需查看需要授予AliyunRAMReadOnlyAccess的許可權。

        說明
        • RAM使用者購買的執行個體,主帳號和RAM使用者預設均為Superuser。

        • 主帳號購買的執行個體,RAM使用者需要被主帳號授權後,才能使用執行個體。

      • 自訂策略:由使用者管理,策略的版本更新由使用者維護。使用者可以自主建立、更新和刪除自訂策略。更多資訊,請參見建立自訂權限原則

        重要

        為使用者配置權限原則時,請務必配置AliyunRAMReadOnlyAccess的權限原則,保障使用者能夠訪問管控台。

        建立權限原則頁面,您可以使用指令碼編輯自訂許可權。

        Hologres支援的自訂許可權配置如下:

        重要

        實際使用時請刪除注釋,否則會導致代碼不可用。

        {
            "Statement": [
                {  // 一次性授予所有許可權,設定了該條,可不用設定下面的其他許可權
                    "Effect": "Allow",
                    "Action": "hologram:*",//所有操作都有許可權
                    "Resource": "acs:hologram:*:<帳號ID>:instance/*"//針對所有region所有執行個體 <*不能被執行個體替代>
                },
                {   //購買或者續約執行個體
                    "Effect": "Allow",
                    "Action": "hologram:*",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {   //刪除執行個體
                    "Effect": "Allow",
                    "Action": "hologram:DeleteInstance",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"//<需要配置才能刪除,不配置不能刪除但是會提示刪除成功>
                },
                {   //ram帳號購買許可權。ram使用者配置該許可權後才可以購買執行個體
                    "Effect": "Allow",
                    "Action": "bss:PayOrder",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"//<測試不通過>
                },
                {   //展示執行個體詳情
                    "Effect": "Allow",
                    "Action": "hologram:GetInstance",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*" //<*能被執行個體替代>
                },
                { //展示執行個體列表
                    "Effect": "Allow",
                    "Action": "hologram:ListInstances",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"//<*不能被執行個體替代>
                },
                {  //暫停執行個體
                    "Effect": "Allow",
                    "Action": "hologram:StopInstance",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {  //恢複執行個體
                    "Effect": "Allow",
                    "Action": "hologram:ResumeInstance",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {  //展示執行個體監控警示
                    "Effect": "Allow",
                    "Action": "hologram:GetInstanceMetrics",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"//<*可以被執行個體替代>
                },
                {  //修改網路類型
                    "Effect": "Allow",
                    "Action": "hologram:UpdateInstanceNetworkType",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                }.
                {  //訪問HoloWeb
                    "Effect": "Allow",
                    "Action": "hologram:HoloWebAccess",
                    "Resource": "*"
                }      
            ],
            "Version": "1"
        }

        參數說明如下表所示。

        參數

        描述

        <region>

        地區,例如beijing

        <帳號ID>

        阿里雲帳號(主帳號)的ID。

        *

        表示該阿里雲帳號中所有執行個體。您也可以替換*為具體的一個執行個體ID。

        樣本語句如下。

        acs:hologram:cn-beijing:4322xxxxx:instance/hhhgggxxxx
        重要

        以下授權選項的instance/* 中的*不可以替換為具體某一個執行個體ID,只能設定為*

        {
            "Statement": [
                {  // 一次性授予所有許可權,設定了該條,可不用設定下面的其他許可權
                    "Effect": "Allow",
                    "Action": "hologram:*",//所有操作都有許可權
                    "Resource": "acs:hologram:*:<帳號ID>:instance/*"//針對所有region所有執行個體
                },
                {   //購買,續約執行個體
                    "Effect": "Allow",
                    "Action": "hologram:*",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {   //刪除執行個體
                    "Effect": "Allow",
                    "Action": "hologram:DeleteInstance",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {   //RAM使用者購買許可權,需要購買執行個體必須加上該條
                    "Effect": "Allow",
                    "Action": "bss:PayOrder",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                { //展示執行個體列表
                    "Effect": "Allow",
                    "Action": "hologram:ListInstances",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {  //暫停執行個體
                    "Effect": "Allow",
                    "Action": "hologram:StopInstance",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {  //恢複執行個體
                    "Effect": "Allow",
                    "Action": "hologram:ResumeInstance",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {  //展示執行個體監控警示
                    "Effect": "Allow",
                    "Action": "cms:DescribeMetricList", "cms:QueryMetricList"
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                },
                {  //修改網路類型
                    "Effect": "Allow",
                    "Action": "hologram:UpdateInstanceNetworkType",
                    "Resource": "acs:hologram:cn-<region>:<帳號ID>:instance/*"
                }
            ],
            "Version": "1"
        }

      單擊繼續編輯基本資料,輸入基本名稱備忘

  5. 單擊確認新增授權,然後單擊關閉

與控制台相關的RAM使用者權限問題

Hologres管理主控台主要整合了RAM鑒權和執行個體的部分開發許可權,與Hologres管理主控台相關的許可權問題如下所示:

  • RAM使用者無法查看執行個體列表及執行個體ID。

    • 問題現象

      RAM使用者選擇了正確的地區,但無法看到已購買的執行個體,並提示暫無許可權查看所有執行個體,請讓主帳號前往RAM中心授予目前使用者“xxx/*”資源的“hologram:ListInstances”許可權報錯。

    • 問題原因

      當前RAM使用者沒有查看執行個體列表的許可權。

    • 解決方案

      主帳號登入RAM控制台,授予RAM使用者顯示執行個體列表的許可權AliyunHologresReadOnlyAccess

  • RAM使用者無執行個體的操作許可權。

    • 問題現象

      被授權為Superuser的RAM使用者無法購買、升配和降配執行個體,以及轉換執行個體的付費方式由隨用隨付訂閱。提示RAM子帳號鑒權不通過報錯。

    • 問題原因

      購買、升配、降配及轉換付費方式等操作涉及費用賬單,由主帳號統一控制,當前RAM使用者沒有相關許可權。

    • 解決方案

      主帳號登入RAM控制台,授予RAM使用者與執行個體費用相關的許可權AliyunHologresFullAccessAliyunBSSOrderAccess

與執行個體使用相關的RAM使用者權限問題

  • 無法登入並使用Hologres執行個體。

    • 問題現象

      報錯:role "<role_name>" does not exist

    • 問題原因

      建立Hologres執行個體後,僅阿里雲帳號和購買執行個體的RAM使用者會被預設建立為執行個體的Superuser使用者。其餘RAM使用者均需要Superuser在執行個體中將其建立為執行個體的使用者,才可以登入並使用Hologres執行個體。

    • 解決方案

      說明

      可通過執行select * from pg_user;命令查看當前執行個體的Superuser。

      • 在HoloWeb的使用者管理頁面新增使用者,並授予相應許可權,詳情請參見使用者管理

      • 登入執行個體,執行create user "<role_name>"語句,詳情請參見Hologres許可權模型概述

  • 無法查看使用者管理和DB管理頁面。

    • 問題現象

      RAM使用者登入管理主控台,在使用者管理DB管理頁面都看不到內容,且出現如下報錯:暫無許可權,請找Superuser將當前賬戶添加到執行個體中

    • 問題原因

      當前RAM使用者沒有執行個體的開發許可權,需要授予具體的開發許可權才能展示相關資訊。

    • 解決方案

      阿里雲帳號或擁有Superuser的RAM使用者給此RAM使用者授予執行個體的開發許可權,詳情請參見授予RAM使用者執行個體的開發許可權

  • 誤刪Superuser

    • 問題現象

      誤將執行個體下的所有Superuser都改為了普通使用者。

      說明

      若誤將執行個體下的所有Superuser都改為了普通使用者,則無法進行包括使用者管理和執行個體相關的大部分操作。

    • 解決方案

      請加入Hologres官方答疑DingTalk群聯絡支援人員,詳情可參見線上支援