Join our Newsletter — 33% off our NHI Course
Home› FAQ› Governance, Ownership & Risk› Why should AWS KMS key policies not allow…
Governance, Ownership & Risk

Why should AWS KMS key policies not allow public access?

← Back to all FAQ
By NHI Mgmt Group Editorial Team Updated October 20, 2026 Domain: Governance, Ownership & Risk

AWS KMS key policies should never allow public access because anyone who can use the key can decrypt protected data, create new encrypted data, or misuse the key for unauthorised operations. Review key policies for broad principals and wildcard permissions, and restrict use to the exact roles, accounts, and services that need it.

Why public access turns a KMS key policy into a data exposure problem

AWS KMS key policies are authorization rules, not documentation. If you make them public or broadly permissive, you are no longer limiting who can invoke cryptographic operations on that key. The practical consequence is that the policy can turn a protective control into a shared decryption and encryption capability, which undermines the confidentiality and integrity of every system that depends on the key.

That is why the issue is larger than “too many principals.” A public policy can let unintended identities use the key directly or indirectly through AWS services, cross-account access paths, or role assumptions. In practice, the safe design pattern is to treat every allowed principal as a deliberate trust decision and verify that the policy matches the exact workload, account, and service boundary that needs the key.

For AWS-specific control design, the AWS Security Guide places KMS alongside the broader access controls that shape how AWS resources are exposed and used.

What misuse looks like when KMS permissions are too broad

With a permissive key policy, the main failure is not just accidental viewing of ciphertext. A principal that can use the key may be able to decrypt protected data, generate new encrypted objects, or sign or verify material in ways the application never intended. That makes the key a high-value control point for both data access and operational abuse.

Broad principals and wildcard permissions are especially dangerous because they are difficult to reason about during reviews. A policy that looks harmless at the statement level may still grant access through a delegated role, an AWS service integration, or a future account relationship that was not present when the policy was written. The result is drift between the intended trust boundary and the effective one.

The right lens is not “who might need this someday,” but “which exact identities need this now, and why.” NHIMG’s AWS IAM Policies and Roles Guide is useful here because the same evaluation logic that governs IAM also helps you spot overly broad trust and permission patterns around KMS.

How to review and tighten a KMS key policy

Start by enumerating every principal that can use the key and every statement that grants that ability. Then check whether each grant is tied to a specific role, account, or service integration rather than a wildcard or overly broad AWS principal. If a statement is meant to support an application, make sure the application role is the one being trusted, not a human-admin bucket of convenience access.

Next, confirm that the policy aligns with the surrounding AWS control plane. KMS access often becomes broader than intended when a policy is copied from another environment, when a role trust policy is looser than the application needs, or when multiple accounts share a key without a clear ownership model. The policy should reflect the smallest workable trust surface, not the broadest acceptable one.

For key lifecycle and cryptographic governance, NHIMG’s Cryptographic Key Management Guide covers key lifecycle, KMS access, rotation after compromise, and the inventory discipline needed to keep key use controlled.

Risk and Threat Considerations

Public KMS access creates immediate exposure because the key becomes a reusable mechanism for reading or creating protected data. If the key protects secrets, storage objects, or application data, a single permissive statement can widen the blast radius from one workload to every principal that can reach the key path.

Failure mechanism: The policy allows unintended principals, or principals that can be reached through role assumption or service integration, to call KMS operations on a key that was meant to remain private.

Impact: Attackers or careless internal users can decrypt data, re-encrypt assets, or misuse the key to support persistence, data theft, or unauthorized service behavior, which can turn a policy mistake into a broad compromise.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

NIST SP 800-53 Rev 5 sets the technical controls, while ISO/IEC 27001:2022 defines the regulatory obligations.

FrameworkControl / ReferenceRelevance
NIST SP 800-53 Rev 5AC-3 — Access EnforcementKMS key use must be enforced by explicit access decisions.
AC-6 — Least PrivilegePublic KMS policies violate least-privilege principles for key use.
IA-5 — Authenticator ManagementKMS access often depends on credentials and keys that need lifecycle control.
Recommendation — Enforce explicit principal-level access checks before allowing any KMS use. Restrict KMS permissions to the minimum principals and operations required. Rotate and govern the credentials that can invoke KMS-protected operations.
ISO/IEC 27001:2022A.5.15 — Access ControlKMS key policies are access-control rules governing cryptographic use.
A.5.23 — Information security for use of cloud servicesAWS KMS is a cloud security control that depends on cloud policy governance.
Recommendation — Limit KMS key access to explicitly approved identities and services. Review cloud key policies as part of cloud-service security governance.

Practitioner Guidance

What to verify: Check every KMS statement for wildcard principals, broad cross-account trust, and service access that is not explicitly justified by the workload. If the answer is “any authenticated AWS principal can use this,” the policy is already too open for a key that protects real data.

Decision rule: If the key protects production data, prefer explicit role- or account-bound use over shared or inherited access, and treat any exception as a governance decision that needs an owner and a review date.

Practitioner takeaway: A KMS key policy should define a narrow trust boundary, because the security of the encrypted data is only as strong as the identities allowed to use the key.

Free weekly newsletter

Subscribe to the NHI & AI Identity Journal

The latest on NHI and Agentic AI security – articles, research, breaches, news and events every week.

Bonus 33% off our NHI Course when you subscribe.

NHIMG Editorial Note
Reviewed and updated by the NHIMG editorial team on October 20, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org