

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

# KMS 金鑰存取和許可
<a name="control-access"></a>

若要使用 AWS KMS，您必須擁有 AWS 可用於驗證請求的登入資料。登入資料必須包含存取 AWS 資源 AWS KMS keys 和[別名的](kms-alias.md)許可。除非明確提供該許可且從未拒絕，否則任何 AWS 委託人都沒有任何 KMS 金鑰的許可。沒有能使用或管理 KMS 金鑰的隱含或自動許可。

若要控制對 KMS 金鑰的存取，您可以使用以下政策機制。
+ [金鑰政策](key-policies.md) – 每個 KMS 金鑰都有一個金鑰政策。它是控制對 KMS 金鑰之存取的主要機制。您可以單獨使用金鑰政策來控制存取，這表示在單一文件 (金鑰政策) 中定義 KMS 金鑰的完整存取範圍。如需使用金鑰政策的詳細資訊，請參閱[金鑰政策](key-policies.md)。
+ [IAM 政策](iam-policies.md) – 您可以使用 IAM 政策搭配金鑰政策和授權，來控制對 KMS 金鑰的存取。透過這種方式控制存取，可讓您管理 IAM 中 IAM 身分的所有許可。若要使用 IAM 政策來允許存取 KMS 金鑰，金鑰政策必須明確允許。如需使用 IAM 政策的詳細資訊，請參閱 [IAM 政策](iam-policies.md)。
+ [授權](grants.md) – 您可以使用授權搭配金鑰政策和 IAM 政策，來允許對 KMS 金鑰的存取。透過這種方式控制存取，可讓您在金鑰政策中允許存取 KMS 金鑰，並且允許身分將其存取權委派給其他人。如需使用授與的詳細資訊，請參閱[在 中授予 AWS KMS](grants.md)。

## KMS 金鑰政策
<a name="intro-key-policy"></a>

管理 AWS KMS 資源存取權的主要方法是使用 *政策*。政策是描述哪些主體可以存取哪些資源的文件。連接至 IAM 身分的政策稱為以*身分為基礎的政策* （或 *IAM 政策*)，而連接至其他資源類型的政策稱為*資源政策*。KMS 金鑰的資源 AWS KMS 政策稱為*金鑰政策*。

所有 KMS 金鑰都擁有金鑰政策。如果您未提供， 會為您 AWS KMS 建立一個。 AWS KMS 使用[的預設金鑰政策](key-policy-default.md)會因您在 AWS KMS 主控台中建立金鑰或使用 AWS KMS API 而有所不同。我們建議您編輯預設金鑰政策，以符合組織對[最低權限許可](least-privilege.md)的要求。

如果金鑰和 IAM 主體位於相同 AWS 帳戶中，您可以單獨使用金鑰政策來控制存取，這表示 KMS 金鑰的完整存取範圍是在單一文件中定義 （金鑰政策）。不過，當一個帳戶中的發起人必須存取不同帳戶中的金鑰時，您無法單獨使用金鑰政策來授予存取權。在跨帳戶案例中，IAM 政策必須連接到發起人的使用者或角色，明確允許發起人進行 API 呼叫。

您也可以將 IAM 政策與金鑰政策和授權結合使用，以控制對 KMS 金鑰的存取。若要使用 IAM 政策來控制對 KMS 金鑰的存取，金鑰政策必須授予帳戶使用 IAM 政策的許可。您可以指定[啟用 IAM 政策的金鑰政策陳述](key-policy-default.md#key-policy-default-allow-root-enable-iam)式，也可以在金鑰政策中明確[指定允許的主體](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying)。

撰寫政策時，請確定您擁有強式控制，限制誰可以執行下列動作：
+ 更新、建立和刪除 IAM 和 KMS 金鑰政策
+ 從使用者、角色和群組連接和分離 IAM 政策
+ 從 KMS 金鑰連接和分離 KMS 金鑰政策

## KMS 金鑰授權
<a name="intro-kms-grants"></a>

除了 IAM 和金鑰政策之外， AWS KMS 還支援[授予](grants.md)。授予提供靈活且強大的方法來委派許可。您可以使用授予，對 AWS 帳戶中的 IAM 主體或其他 AWS 帳戶中的 IAM 主體發出有時間限制的 KMS 金鑰存取。如果您在建立政策時不知道委託人的名稱，或者需要存取的委託人經常變更，我們建議您發出有時間限制的存取。[承授者主體](grants.md#terms-grantee-principal)可以位於與 KMS 金鑰相同的帳戶中，也可以位於不同的帳戶中。如果委託人和 KMS 金鑰位於不同的帳戶中，則除了授予之外，您還必須指定 IAM 政策。授予需要額外的管理，因為您必須呼叫 API 來建立授予，並在不再需要授予時淘汰或撤銷授予。