在使用錯誤診斷工具時,可能會遇到無許可權查詢其他帳號的API診斷資訊的情況。這將影響對API錯誤原因的分析及解決方案的擷取。本文將介紹如何通過帳號授權,以擷取查詢其他帳號API診斷資訊的許可權。
同一阿里雲帳號內
您可以為需要查看API診斷資訊的RAM使用者授予相應許可權,以便其能夠查看其他RAM使用者或RAM角色的API診斷資訊。
步驟一:建立自訂權限原則
使用主帳號或者具有Resource Access Management許可權的RAM使用者登入。
在左側導覽列,選擇許可權管理,單擊權限原則。
在權限原則頁面,單擊建立權限原則。

在建立權限原則頁面,單擊指令碼編輯頁簽。

複製下面權限原則內容,單擊確定。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "openapiexplorer:GetRequestLog", "ram:DecodeDiagnosticMessage" ], "Resource": "*" } ] }說明該權限原則允許使用者查看阿里雲帳號下所有的API調用日誌及無許可權訪問的詳細資料。
輸入許可權策略名稱稱和備忘,單擊確定。
步驟二:為RAM使用者授權
您可以任選以下一種方式為RAM使用者授權:
給RAM使用者授權的操作步驟,請參見管理RAM使用者的許可權。
給RAM使用者組授權的操作步驟,請參見為RAM使用者組授權
步驟三:查看API診斷結果
訪問,輸入待查詢的RequestId,單擊診斷。

不同阿里雲帳號之間
當需要查看其他阿里雲帳號的API診斷資訊時,您可以通過角色扮演的方式獲得相應許可權。
方案流程如下:
帳號A:調用API報錯的帳號。
帳號B:需查看API診斷資訊的帳號。
帳號A建立RAM角色,並授權允許帳號B扮演。
帳號B建立RAM使用者,並授權該RAM使用者進行角色扮演。
帳號B通過RAM使用者扮演帳號A所提供的RAM角色,即可在錯誤診斷工具中成功完成跨帳號API診斷資訊的查詢。
步驟一:帳號A建立RAM角色並授權
建立RAM角色
使用帳號A登入RAM控制台,建立一個信任主體類型為雲帳號的RAM角色。更多資訊,請參見建立可信實體為阿里雲帳號的RAM角色。
說明在建立角色頁面信任主體名稱處,選擇其他雲帳號並填入帳號B的帳號ID(UID)。

建立自訂權限原則
具體操作步驟請參考步驟一:建立自訂權限原則。
為RAM角色授權
為RAM角色授予步驟2建立的自訂權限原則,具體操作,請參見管理RAM角色的許可權。
步驟二:帳號B建立RAM使用者並授權
建立RAM使用者
使用帳號B登入RAM控制台,建立一個RAM使用者。關於如何建立RAM使用者,請參見建立RAM使用者。
說明為了帳號安全,建議您根據實際情況為RAM使用者只配置一種訪問方式,將控制台訪問和程式訪問分離,避免混用。

為RAM使用者授權
在扮演RAM角色之前,需要為RAM使用者授予扮演RAM角色的許可權。使用帳號B為該RAM使用者授予
AliyunSTSAssumeRoleAccess許可權,以允許該RAM使用者扮演所有RAM角色。有關如何為RAM使用者授權的詳細資料,請參見管理RAM使用者的許可權。說明如果希望該RAM使用者僅能扮演指定的RAM角色,具體操作,請參見RAM角色和STS Token常見問題。
步驟三:扮演RAM角色並查看API診斷資訊
使用帳號B建立的RAM使用者訪問RAM使用者登入頁進行登入。
將滑鼠移至上方在右上方頭像的位置,單擊切換身份。

在角色切換頁面,輸入相關資訊後,請單擊提交進行登入。本樣本輸入的值為帳號A的帳號ID(UID)和RAM角色名稱。

查看API診斷資訊。
訪問,輸入待查詢的RequestId,單擊診斷。
