本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
組織中的所有 AWS 資源,包括根、OUs、帳戶和政策,都由 擁有 AWS 帳戶,而建立或存取資源的許可受許可政策的約束。如果是組織,其管理帳戶擁有所有資源。帳戶管理員可以透過將許可政策連接至身分 IAM (使用者、群組和角色) 來控制對 AWS 資源的存取。
注意
帳戶管理員 (或管理員使用者) 是具有管理員許可的使用者。如需詳細資訊,請參閱 IAM 使用者指南 中的安全最佳實務IAM。
當您授予許可時,能夠決定取得許可的對象、這些對象取得的資源許可,以及可對上述資源進行的特定動作。
根據預設,IAM使用者、群組和角色沒有許可。身為 組織的管理帳戶中的管理員,您可以執行管理任務,或將管理員許可委派給管理帳戶中的其他IAM使用者或角色。若要這麼做,您可以將IAM許可政策連接至IAM使用者、群組或角色。根據預設,使用者不具任何許可;這種情況有時稱為隱含拒絕。政策會將隱含拒絕覆寫為明確允許,其指定使用者可以執行的動作,以及可以對其執行動作的資源。如果將許可授予角色,則組織中其他帳戶的使用者可以擔任該角色。
AWS Organizations 資源和操作
本節討論 AWS Organizations 概念如何映射到其 IAM等價概念。
資源
在 中 AWS Organizations,您可以控制對下列資源的存取:
-
OUs 組成組織的階層結構的根和
-
屬於組織成員的帳戶
-
您連接到組織中實體的政策
-
您用來變更組織狀態的交握
每個資源都有與其相關聯的唯一 Amazon Resource Name (ARN)。您可以在IAM許可政策的 Resource
元素ARN中指定資源的 ,以控制對 資源的存取。如需 中使用的資源ARN格式的完整清單 AWS Organizations,請參閱服務授權參考 中由 定義的資源類型 AWS Organizations。
作業
AWS 提供一組操作,以使用組織中的資源。它們可讓您執行建立、列出、修改、存取資源的內容、刪除資源等動作。可在IAM政策的 Action
元素中參考大多數操作,以控制誰可以使用該操作。如需可在IAM政策中用作許可 AWS Organizations 的操作清單,請參閱服務授權參考 中的組織定義的動作。
當您在單一許可政策 Statement
中結合 Resource
和 Action
時,您可以控制可使用該特定動作所在的資源。
條件索引鍵
AWS 提供條件索引鍵供您查詢,以更精細地控制某些動作。您可以在IAM政策的 Condition
元素中參考這些條件索引鍵,以指定陳述式被視為相符時必須符合的其他情況。
下列條件索引鍵特別適用於 AWS Organizations:
-
aws:PrincipalOrgID
– 簡化在以資源為基礎的政策中指定Principal
元素。此全域金鑰是列出 AWS 帳戶 組織中所有 IDs 帳戶的一種替代方案。您可以在Condition
元素中指定組織 ID,而不是列出組織成員的所有帳戶。注意
此全域條件也適用於組織的管理帳戶。
如需詳細資訊,請參閱 IAM 使用者指南
PrincipalOrgID
中的AWS 全域條件內容索引鍵中的 說明。 -
aws:PrincipalOrgPaths
– 使用此條件金鑰來比對特定組織根、OU 或其子系的成員。當發出請求的主體 (根使用者、IAM使用者或角色) 在指定的組織路徑中時,aws:PrincipalOrgPaths
條件索引鍵會傳回 true。路徑是 AWS Organizations 實體結構的文字表示法。如需路徑的詳細資訊,請參閱 IAM 使用者指南 中的了解 AWS Organizations 實體路徑。如需使用此條件金鑰的詳細資訊,請參閱 IAM 使用者指南 中的 aws:PrincipalOrgPaths。例如,下列條件元素符合OUs相同組織中兩個成員中的其中一個成員。
"Condition": { "ForAnyValue:StringLike": { "aws:PrincipalOrgPaths": [ "o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-def0-awsbbbbb/", "o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-jkl0-awsddddd/" ] } }
-
organizations:PolicyType
– 您可以使用此條件索引鍵,限制與 Organizations 政策相關的API操作只處理指定類型的 Organizations 政策。您可以將此條件金鑰套用至任何政策陳述式,其中包含與 Organizations 政策互動的動作。您可以搭配此條件金鑰使用下列值:
-
SERVICE_CONTROL_POLICY
-
BACKUP_POLICY
-
TAG_POLICY
-
CHATBOT_POLICY
-
AISERVICES_OPT_OUT_POLICY
例如,下列範例政策允許使用者執行任何 Organizations 操作。不過,如果使用者執行一個採取政策引數的操作,則只有在指定的政策是標記政策時,才允許此操作。如果使用者指定任何其他類型的政策,則此操作會失敗。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "IfTaggingAPIThenAllowOnOnlyTaggingPolicies", "Effect": "Allow", "Action": "organizations:*", "Resource": "*", "Condition": { "StringLikeIfExists": { "organizations:PolicyType": [ "TAG_POLICY" ] } } } ] }
-
-
organizations:ServicePrincipal
– 如果您使用 E nableAWSServiceAccess 或 D isableAWSServiceAccess 操作來啟用或停用其他 AWS 服務的受信任存取,則會以 條件提供。您可以使用organizations:ServicePrincipal
來限制這些操作對核准的服務委託人名稱清單所做的請求。例如,以下政策允許使用者只有在使用 啟用和停用受信任存取 AWS Firewall Manager 時指定 AWS Organizations。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowOnlyAWSFirewallIntegration", "Effect": "Allow", "Action": [ "organizations:EnableAWSServiceAccess", "organizations:DisableAWSServiceAccess" ], "Resource": "*", "Condition": { "StringLikeIfExists": { "organizations:ServicePrincipal": [ "fms.amazonaws.com" ] } } } ] }
如需可在IAM政策中用作許可的所有 AWS Organizations– 特定條件金鑰清單,請參閱服務授權參考 中的 的條件金鑰 AWS Organizations。
了解資源所有權
AWS 帳戶 擁有在帳戶中建立的資源,無論誰建立資源。具體而言,資源擁有者是驗證資源建立請求 AWS 帳戶 的主要實體 (即根使用者、IAM使用者或IAM角色) 的 。對於組織, 一律是管理帳戶。您無法呼叫從成員帳戶建立或存取組織資源的大多數操作。下列範例說明其如何運作:
-
如果您使用管理帳戶的根憑證來建立 OU,則您的管理帳戶即為資源的擁有者。(在 中 AWS Organizations,資源是 OU)。
-
如果您在管理帳戶中建立IAM使用者,並將建立 OU 的許可授予該使用者,則使用者可以建立 OU。不過,使用者所屬的管理帳戶會擁有資源。
-
如果您在管理帳戶中建立具有建立 OU 許可IAM的角色,則任何可以擔任該角色的人都可以建立 OU。角色所屬的管理帳戶 (非擔任使用者) 會擁有該 OU 資源。
管理資源存取
許可政策描述誰可以存取哪些資源。下一節說明可用來建立許可政策的選項。
注意
本節討論在 內容IAM中使用 AWS Organizations。它不會提供有關 IAM服務的詳細資訊。如需完整IAM文件,請參閱 IAM 使用者指南 。如需有關IAM政策語法和描述的資訊,請參閱 IAM 使用者指南 中的IAMJSON政策參考。
連接到IAM身分的政策稱為身分型政策 (IAM 政策)。連接至資源的政策稱為資源型政策。 僅 AWS Organizations 支援身分型政策 (IAM 政策)。
身分型許可政策 (IAM 政策)
您可以將政策連接到IAM身分,以允許這些身分對 AWS 資源執行操作。例如,您可以執行下列動作:
-
將許可政策連接至您帳戶中的使用者或群組 – 若要授予使用者建立 AWS Organizations 資源的許可,例如服務控制政策 (SCP) 或 OU,您可以將許可政策連接至使用者或使用者所屬的群組。使用者或群組必須位在組織的管理帳戶中。
-
將許可政策連接至角色 (授予跨帳戶許可) – 您可以將身分型許可政策連接至IAM角色,以授予跨帳戶對組織的存取權。例如,管理帳戶中的管理員可以建立角色,將跨帳戶許可授予成員帳戶中的使用者,如下所示:
-
管理帳戶管理員會建立IAM角色,並將許可政策附加至將許可授予組織資源的角色。
-
管理帳戶管理員將信任政策連接至角色,該角色會將成員帳戶 ID 識別為可以擔任角色的
Principal
。 -
然後成員帳戶管理員可以委派許可給成員帳戶中的任何使用者,以擔任該角色。這樣做可讓成員帳戶中的使用者可以在管理帳戶和組織中建立或存取資源。如果您想要授予 AWS 服務擔任角色的許可,信任政策中的主體也可以是 AWS 服務主體。
如需使用 IAM 委派許可的詳細資訊,請參閱 IAM 使用者指南 中的存取管理。
-
以下為允許使用者在您的組織中執行 CreateAccount
動作的範例政策。
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"Stmt1OrgPermissions",
"Effect":"Allow",
"Action":[
"organizations:CreateAccount"
],
"Resource":"*"
}
]
}
您也可以在政策的 Resource
元素ARN中提供部分 ,以指示資源類型。
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"AllowCreatingAccountsOnResource",
"Effect":"Allow",
"Action":"organizations:CreateAccount",
"Resource":"arn:aws:organizations::*:account/*"
}
]
}
您也可以拒絕建立未將特定標籤納入正在建立的帳戶中的帳戶。
{
"Version":"2012-10-17",
"Statement":[
{
"Sid":"DenyCreatingAccountsOnResourceBasedOnTag",
"Effect":"Deny",
"Action":"organizations:CreateAccount",
"Resource":"*",
"Condition":{
"StringEquals":{
"aws:ResourceTag/key":"value"
}
}
}
]
}
如需使用者、群組、角色和許可的詳細資訊,請參閱 IAM 使用者指南 中的IAM身分 (使用者、使用者群組和角色)。
資源型政策
某些服務 (例如 Amazon S3) 支援以資源為基礎的許可政策。例如,您可以將政策連接至 Amazon S3 儲存貯體,以管理該儲存貯體的存取許可。 AWS Organizations 目前不支援資源型政策。
指定政策元素:Actions、Conditions、Effects 和 Resources
對於每個 AWS Organizations 資源,服務會定義一組API操作或動作,可以用某種方式與該資源互動或操作該資源。若要授予這些操作的許可, AWS Organizations 會定義一組您可以在政策中指定的動作。例如,對於 OU 資源, AWS Organizations 定義如下動作:
-
AttachPolicy
和DetachPolicy
-
CreateOrganizationalUnit
和DeleteOrganizationalUnit
-
ListOrganizationalUnits
和DescribeOrganizationalUnit
在某些情況下,執行API操作可能需要多個動作的許可,也可能需要多個資源的許可。
以下是您可以在IAM許可政策中使用的最基本元素:
-
動作 – 使用此關鍵字,可辨識要允許或拒絕的操作 (動作)。例如,根據指定的
Effect
,organizations:CreateAccount
允許或拒絕使用者執行CreateAccount
操作的 AWS Organizations 許可。如需詳細資訊,請參閱 IAM 使用者指南 中的IAMJSON政策元素:動作。 -
資源 – 使用此關鍵字來指定政策陳述式套用ARN的資源的 。如需詳細資訊,請參閱 IAM 使用者指南 中的IAMJSON政策元素:資源。
-
條件 – 使用此關鍵字,可指定必須達到才能套用政策陳述式的條件。
Condition
通常會指定必須成立政策才會符合的額外情況。如需詳細資訊,請參閱 IAM 使用者指南 中的IAMJSON政策元素:條件。 -
效果 – 使用此關鍵字,可指定政策陳述式應允許或拒絕對資源執行動作。如果您未明確授予存取 (或允許) 資源,則隱含地拒絕存取。您也可以明確拒絕存取資源,您可能會這樣做,以確保使用者無法對特定資源執行特定動作,即使另有其他政策授予存取。如需詳細資訊,請參閱 IAM 使用者指南 中的IAMJSON政策元素:效果。
-
主體 – 在身分型政策 (IAM 政策) 中,附加政策的使用者會自動且隱含地是主體。對於資源型政策,您可以指定要接收許可的使用者、帳戶、服務或其他實體 (僅適用於資源型政策)。 AWS Organizations 目前僅支援身分型政策,而非資源型政策。
若要進一步了解IAM政策語法和描述,請參閱 IAM 使用者指南 中的IAMJSON政策參考。