管理您的 組織的存取許可 - AWS Organizations

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

管理您的 組織的存取許可

組織中的所有 AWS 資源 (包括根目錄OUs、帳號和策略) 均歸組織所擁有 AWS 帳戶,建立或存取資源的權限則由權限原則控制。如果是組織,其管理帳戶擁有所有資源。帳戶管理員可以透過將權限原則附加至IAM身分識別 (使用者、群組和角色) 來控制對 AWS 資源的存取。

注意

帳戶管理員 (或管理員使用者) 是具有管理員許可的使用者。如需詳細資訊,請參閱《IAM使用指南》IAM中的「安全性最佳作法」。

當您授予許可時,能夠決定取得許可的對象、這些對象取得的資源許可,以及可對上述資源進行的特定動作。

依預設,IAM使用者、群組和角色沒有權限。身為組織管理帳戶的管理員,您可以執行管理工作或將管理員權限委派給管理帳戶中的其他IAM使用者或角色。若要這麼做,請將IAM權限原則附加至IAM使用者、群組或角色。根據預設,使用者不具任何許可;這種情況有時稱為隱含拒絕。政策會將隱含拒絕覆寫為明確允許,其指定使用者可以執行的動作,以及可以對其執行動作的資源。如果將許可授予角色,則組織中其他帳戶的使用者可以擔任該角色。

AWS Organizations 資源與營運

本節討論 AWS Organizations 概念如何對應至其IAM等效概念。

資源

在中 AWS Organizations,您可以控制對下列資源的存取:

  • 根和組成一個組織的層次結構 OUs

  • 屬於組織成員的帳戶

  • 您連接到組織中實體的政策

  • 您用來變更組織狀態的交握

這些資源中的每一個都有與之關聯的唯一 Amazon 資源名稱 (ARN)。您IAM可以在權限原則的Resource元素ARN中指定資源來控制資源的存取。如需中使用之資源ARN格式的完整清單 AWS Organizations,請參閱服務授權參考 AWS Organizations所定義的資源類型

作業

AWS 提供了一組作業來處理組織中的資源。它們可讓您執行建立、列出、修改、存取資源的內容、刪除資源等動作。大多數作業都可以在IAM原則的Action元素中參照,以控制誰可以使用該作業。如需可用 AWS Organizations 作IAM原則中權限的作業清單,請參閱服務授權參考的組織定義的動作

當您在單一許可政策 Statement 中結合 ResourceAction 時,您可以控制可使用該特定動作所在的資源。

條件索引鍵

AWS 提供您可以查詢的條件索引鍵,以提供對特定動作更精細的控制。您可以在IAM原則的Condition項目中參照這些條件索引鍵,以指定必須符合的其他情況,才能將陳述式視為相符項目。

下列條件鍵對於特別有用 AWS Organizations:

  • aws:PrincipalOrgID – 簡化在以資源為基礎的政策中指定 Principal 元素。此全域金鑰提供了列出組織中所有 AWS 帳戶 帳戶IDs的替代方法。您可以在 Condition 元素中指定組織 ID,而不是列出組織成員的所有帳戶。

    注意

    此全域條件也適用於組織的管理帳戶。

    若要取得更多資訊,請參閱《IAM使用指南》PrincipalOrgID中的AWS 整體條件前後關聯鍵字中的描述。

  • aws:PrincipalOrgPaths – 使用此條件金鑰來比對特定組織根、OU 或其子系的成員。當提出要求的主參與者 (root 使用者、IAM使用者或角色) 位於指定的組織路徑中時,aws:PrincipalOrgPaths條件索引鍵會傳回 true。路徑是 AWS Organizations 實體結構的文字表示。若要取得有關路徑的更多資訊,請參閱《IAM使用指南》中的瞭解 AWS Organizations 實體路徑。如需有關使用此條件金鑰的詳細資訊,請參閱使用IAM者指南PrincipalOrgPaths中的 aws:

    例如,下列條件元素符合相同組織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 政策互動的動作。

    您可以搭配此條件金鑰使用下列值:

    • AISERVICES_OPT_OUT_POLICY

    • BACKUP_POLICY

    • SERVICE_CONTROL_POLICY

    • TAG_POLICY

    例如,下列範例政策允許使用者執行任何 Organizations 操作。不過,如果使用者執行一個採取政策引數的操作,則只有在指定的政策是標記政策時,才允許此操作。如果使用者指定任何其他類型的政策,則此操作會失敗。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "IfTaggingAPIThenAllowOnOnlyTaggingPolicies", "Effect": "Allow", "Action": "organizations:*", "Resource": "*", "Condition": { "StringLikeIfExists": { "organizations:PolicyType": [ "TAG_POLICY" ] } } } ] }
  • organizations:ServicePrincipal— 如果您使用 E nableAWSService Access 或 D isableAWSService Access 操作來啟用或禁用其他 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—specific 條件金鑰的清單,請參閱服務授權參考 AWS Organizations的條件金鑰

了解資源所有權

無論是誰建立資源,都 AWS 帳戶 擁有在帳戶中建立的資源。具體來說,資源擁有者是驗證資源建立要求的主參與者實體 (亦即根IAM使用者、使用者或IAM角色) 的擁有者。 AWS 帳戶 對於組織而言,這永遠是管理帳戶。您無法呼叫從成員帳戶建立或存取組織資源的大多數操作。下列範例說明其如何運作:

  • 如果您使用管理帳戶的根憑證來建立 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角色,以授與組織跨帳戶存取權。例如,管理帳戶中的管理員可以建立角色,將跨帳戶許可授予成員帳戶中的使用者,如下所示:

    1. 管理帳號管理員會建立IAM角色,並將權限原則附加至授與組織資源權限的角色。

    2. 管理帳戶管理員將信任政策連接至角色,該角色會將成員帳戶 ID 識別為可以擔任角色的 Principal

    3. 然後成員帳戶管理員可以委派許可給成員帳戶中的任何使用者,以擔任該角色。這樣做可讓成員帳戶中的使用者可以在管理帳戶和組織中建立或存取資源。如果您想要授與 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 定義如下動作:

  • AttachPolicyDetachPolicy

  • CreateOrganizationalUnitDeleteOrganizationalUnit

  • ListOrganizationalUnitsDescribeOrganizationalUnit

在某些情況下,執行API作業可能需要多個動作的權限,並且可能需要多個資源的權限。

以下是您可以在IAM權限原則中使用的最基本元素:

  • 動作 – 使用此關鍵字,可辨識要允許或拒絕的操作 (動作)。例如,根據指定的Effectorganizations:CreateAccount允許或拒絕使用者執行 AWS Organizations CreateAccount作業的權限。如需詳細資訊,請參閱《IAM使用指南》中的IAMJSON策略元素:動作

  • 資源 — 使用此關鍵字可指ARN定策略陳述式所套用的資源。如需詳細資訊,請參閱《IAM使用指南》中的IAMJSON策略元素:資源

  • 條件 – 使用此關鍵字,可指定必須達到才能套用政策陳述式的條件。Condition 通常會指定必須成立政策才會符合的額外情況。如需詳細資訊,請參閱《IAM使用指南》中的IAMJSON策略元素:條件

  • 效果 – 使用此關鍵字,可指定政策陳述式應允許或拒絕對資源執行動作。如果您未明確授予存取 (或允許) 資源,則隱含地拒絕存取。您也可以明確拒絕存取資源,您可能會這樣做,以確保使用者無法對特定資源執行特定動作,即使另有其他政策授予存取。如需詳細資訊,請參閱《IAM使用指南》中的IAMJSON策略元素:效果

  • 主體 — 在以識別為基礎的原則 (原IAM則) 中,附加原則的使用者會自動且隱含地成為主體。對於以資源為基礎的策略,您可以指定要接收權限的使用者、帳戶、服務或其他實體 (僅適用於以資源為基礎的策略)。 AWS Organizations 目前僅支援以身分識別為基礎的政策,不支援以資源為基礎的

若要進一步了解IAM原則語法和說明,請參閱IAM使用者指南中的IAMJSON政策參考資料。