AWS控制目錄的運作方式 IAM - AWS控制目錄

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS控制目錄的運作方式 IAM

在您用IAM來管理AWS控制目錄的存取權之前,請先瞭解哪些IAM功能可與AWS控制目錄搭配使用。

IAM可搭配「AWS控制目錄」使用的功能
IAM特徵 AWS控制目錄支援

身分型政策

資源型政策

政策動作

政策資源

政策條件索引鍵

ACLs

ABAC(策略中的標籤)

暫時性憑證

主體許可

服務角色

服務連結角色

若要取得如何AWS控制目錄和其他的高階檢視 AWS 服務適用於大多數IAM功能,請參閱 AWS《IAM使用者指南》IAM中使用的服務。

控制目錄的身分識別原則 AWS

支援身分型政策:

以身分識別為基礎的原則是您可以附加至身分識別 (例如使用者、使用IAM者群組或角色) 的JSON權限原則文件。這些政策可控制身分在何種條件下能對哪些資源執行哪些動作。若要瞭解如何建立以身分識別為基礎的策略,請參閱《IAM使用指南》中的〈建立IAM策略〉。

使用以IAM身分識別為基礎的策略,您可以指定允許或拒絕的動作和資源,以及允許或拒絕動作的條件。您無法在身分型政策中指定主體,因為這會套用至連接的使用者或角色。若要瞭解可在JSON策略中使用的所有元素,請參閱《使用IAM者指南》中的IAMJSON策略元素參考資料。

控制目錄的身分識別原則範例 AWS

若要檢視AWS控制目錄以身分識別為基礎的原則範例,請參閱。控制目錄的身分識別原則範例 AWS

AWS控制目錄中的資源型政策

支援資源型政策:

以資源為基礎的JSON策略是您附加至資源的政策文件。以資源為基礎的政策範例包括IAM角色信任政策和 Amazon S3 儲存貯體政策。在支援資源型政策的服務中,服務管理員可以使用它們來控制對特定資源的存取權限。對於附加政策的資源,政策會定義指定的主體可以對該資源執行的動作以及在何種條件下執行的動作。您必須在資源型政策中指定主體。主參與者可以包括帳戶、使用者、角色、同盟使用者或 AWS 服務.

若要啟用跨帳戶存取,您可以在以資源為基礎的策略中指定一個或多個帳戶中的一個或多個帳戶中的IAM實體作為主體。新增跨帳戶主體至資源型政策,只是建立信任關係的一半。當主參與者與資源不同時 AWS 帳戶,受信任帳戶中的IAM系統管理員也必須授與主參與者實體 (使用者或角色) 存取資源的權限。其透過將身分型政策連接到實體來授與許可。不過,如果資源型政策會為相同帳戶中的主體授予存取,這時就不需要額外的身分型政策。如需詳細資訊,請參閱《IAM使用指南》IAM中的〈跨帳號資源存取

AWS控制目錄的原則動作

支援政策動作:

管理員可以使用 AWS JSON策略,用於指定誰可以存取什麼內容。也就是說,哪個主體在什麼條件下可以對什麼資源執行哪些動作

JSON策略Action元素描述了您可以用來允許或拒絕策略中存取的動作。策略動作通常與關聯的名稱相同 AWS API操作。有一些例外情況,例如沒有匹配API操作的僅限權限的操作。也有一些作業需要政策中的多個動作。這些額外的動作稱為相依動作

政策會使用動作來授予執行相關聯動作的許可。

若要查看AWS控制目錄動作清單,請參閱服務授權參考由AWS控制目錄定義的動作。

AWS控制目錄中的原則動作會在動作之前使用下列前置詞:

controlcatalog

如需在單一陳述式中指定多個動作,請用逗號分隔。

"Action": [ "controlcatalog:ListCommonControls", "controlcatalog:ListDomains" ]

您也可以使用萬用字元 (*) 來指定多個動作。例如,如需指定開頭是 List 文字的所有動作,請包含以下動作:

"Action": "controlcatalog:List*"

若要檢視AWS控制目錄以身分識別為基礎的原則範例,請參閱。控制目錄的身分識別原則範例 AWS

AWS控制目錄的原則資源

支援政策資源:

管理員可以使用 AWS JSON策略,用於指定誰可以存取什麼內容。也就是說,哪個主體在什麼條件下可以對什麼資源執行哪些動作

ResourceJSON原則元素會指定要套用動作的一個或多個物件。陳述式必須包含 ResourceNotResource 元素。最佳做法是使用其 Amazon 資源名稱 (ARN) 指定資源。您可以針對支援特定資源類型的動作 (稱為資源層級許可) 來這麼做。

對於不支援資源層級許可的動作 (例如列出操作),請使用萬用字元 (*) 來表示陳述式適用於所有資源。

"Resource": "*"

若要查看AWS控制目錄資源類型及其清單ARNs,請參閱服務授權參考資料中由AWS控制目錄定義的資源。若要瞭解您可以針對每個資源指定哪些動作,請參閱AWS控制項目錄定義ARN的動作

AWS控制目錄網域具有下列 Amazon 資源名稱 (ARN) 格式:

arn:${Partition}:controlcatalog:::domain/${domainId}

「AWS控制目錄」目標的ARN格式如下:

arn:${Partition}:controlcatalog:::objective/${objectiveId}

AWS控制目錄通用控制項的ARN格式如下:

arn:${Partition}:controlcatalog:::commonControl/${commonControlId}

如需有關的格式的詳細資訊ARNs,請參閱 Amazon 資源名稱 (ARNs)

例如,若要在陳述式中指定i-1234567890abcdef0網域,請使用下列指令ARN。

"Resource": "arn:aws:controlcatalog:::domain/i-1234567890abcdef0"

如需指定屬於特定帳戶的所有執行個體,請使用萬用字元 (*)。

"Resource": "arn:aws:controlcatalog:::domain/*"

某些AWS控制目錄動作 (例如用於建立資源的動作) 無法在特定資源上執行。在這些情況下,您必須使用萬用字元 (*)。

"Resource": "*"

某些AWS控制目錄API動作支援多個資源。例如,ListCommonControls存取通用控制項、目標和網域,因此主參與者必須具有存取這些資源的權限。若要在單一陳述式中指定多個資源,請以ARNs逗號分隔。

"Resource": [ "commonControl", "objective", "domain"

若要檢視AWS控制目錄以身分識別為基礎的原則範例,請參閱。控制目錄的身分識別原則範例 AWS

AWS控制目錄的原則條件索引鍵

支援服務特定政策條件金鑰:

管理員可以使用 AWS JSON策略,用於指定誰可以存取什麼內容。也就是說,哪個主體在什麼條件下可以對什麼資源執行哪些動作

Condition 元素 (或 Condition 區塊) 可讓您指定使陳述式生效的條件。Condition 元素是選用項目。您可以建立使用條件運算子的條件運算式 (例如等於或小於),來比對政策中的條件和請求中的值。

如果您在一個語句中指定多個Condition元素,或在單個Condition元素中指定多個鍵, AWS 使用邏輯AND操作評估它們。如果您為單個條件鍵指定多個值, AWS 使用邏輯OR運算評估條件。必須符合所有條件,才會授與陳述式的許可。

您也可以在指定條件時使用預留位置變數。例如,只有在IAM使用者名稱標記資源時,您才可以授與IAM使用者存取資源的權限。如需詳細資訊,請參閱《IAM使用指南》中的IAM政策元素:變數和標籤

AWS 支援全域條件金鑰和服務特定條件金鑰。若要查看全部 AWS 全域條件索引鍵,請參閱 AWS《IAM使用指南》中的整體條件前後關聯鍵字。

若要查看AWS控制目錄條件金鑰清單,請參閱服務授權參考中的AWS控制目錄的條件索鍵。若要瞭解可以使用條件索引鍵的動作和資源,請參閱AWS控制目錄定義的動作

若要檢視AWS控制目錄以身分識別為基礎的原則範例,請參閱。控制目錄的身分識別原則範例 AWS

ACLs在AWS控制目錄中

支持ACLs:

存取控制清單 (ACLs) 控制哪些主參與者 (帳戶成員、使用者或角色) 具有存取資源的權限。ACLs類似於以資源為基礎的策略,雖然它們不使用JSON政策文件格式。

ABAC與AWS控制目錄

支援 ABAC (策略中的標籤):

以屬性為基礎的存取控制 (ABAC) 是一種授權策略,可根據屬性定義權限。In (入) AWS,這些屬性稱為標籤。您可以將標籤附加到IAM實體 (使用者或角色) 以及許多實體 AWS 的費用。標記實體和資源是的第一步ABAC。然後,您可以設計ABAC策略,以便在主參與者的標籤與他們嘗試存取的資源上的標籤相符時允許作業。

ABAC在快速成長的環境中很有幫助,並且有助於原則管理變得繁瑣的情況。

如需根據標籤控制存取,請使用 aws:ResourceTag/key-nameaws:RequestTag/key-nameaws:TagKeys 條件索引鍵,在政策的條件元素中,提供標籤資訊。

如果服務支援每個資源類型的全部三個條件金鑰,則對該服務而言,值為 Yes。如果服務僅支援某些資源類型的全部三個條件金鑰,則值為 Partial

如需有關的詳細資訊ABAC,請參閱什麼是ABAC?《IAM使用者指南》中。若要檢視包含設定步驟的自學課程ABAC,請參閱《使用指南》中的〈使用以屬性為基礎的存取控制 (ABAC) IAM

搭配AWS控制目錄使用臨時認證

支援臨時憑證:

一些 AWS 服務 使用臨時憑據登錄時不起作用。有關其他信息,包括哪些 AWS 服務 使用臨時登入資料,請參閱 AWS 服務 在《IAM使用者指南》IAM中使用

如果您登入,則使用臨時登入資料 AWS Management Console 使用除了使用者名稱和密碼之外的任何方法。例如,當您訪問 AWS 使用貴公司的單一登入 (SSO) 連結,該程序會自動建立臨時登入資料。當您以使用者身分登入主控台,然後切換角色時,也會自動建立臨時憑證。如需有關切換角色的詳細資訊,請參閱《IAM使用者指南》中的〈切換到角色 (主控台)

您可以使用手動建立臨時認證 AWS CLI 或 AWS API。然後,您可以使用這些臨時登入資料來存取 AWS. AWS 建議您動態產生臨時登入資料,而不是使用長期存取金鑰。如需詳細資訊,請參閱IAM。

控制目錄的跨服務主體AWS權限

支持轉發訪問會話(FAS):

當您使用使用IAM者或角色執行動作 AWS,您被視為校長。使用某些服務時,您可能會執行某個動作,進而在不同服務中啟動另一個動作。FAS使用主體呼叫 AWS 服務,與請求相結合 AWS 服務 向下游服務提出請求。FAS只有當服務收到需要與其他人互動的請求時才會發出請求 AWS 服務 或要完成的資源。在此情況下,您必須具有執行這兩個動作的許可。有關提出FAS請求時的策略詳細信息,請參閱轉發訪問會話

AWS控制目錄的服務角色

支援服務角色:

服務角色是服務假定代表您執行動作的IAM角色。IAM管理員可以從中建立、修改和刪除服務角色IAM。如需詳細資訊,請參閱建立角色以將權限委派給 AWS 服務 (在 IAM 使用者指南中)

警告

變更服務角色的權限可能會中斷AWS控制目錄功能。只有在「AWS控制目錄」提供指引時,才編輯服務角色。

AWS控制目錄的服務連結角色

支援服務連結角色:

服務連結角色是一種服務角色類型,連結至 AWS 服務。 服務可以扮演角色代表您執行動作。服務連結角色會顯示在您的 AWS 帳戶 並由該服務擁有。IAM管理員可以檢視 (但無法編輯服務連結角色) 的權限。

如需建立或管理服務連結角色的詳細資訊,請參閱 AWS 與之合作的服務IAM。在表格中尋找服務,其中包含服務連結角色欄中的 Yes。選擇連結,以檢視該服務的服務連結角色文件。