AWS_HAS_ACCESS_KEY
Summary
Forestall ACL Alias
AWS_HAS_ACCESS_KEY
Edge Type
Relationship
Affected Object Types
IAM Users, Access Keys
Exploitation Certainty
Unlikely
AWS IAM Action / Condition
Relationship visibility via iam:ListAccessKeys; key usage context via iam:GetAccessKeyLastUsed
Description
AWS_HAS_ACCESS_KEY means an IAM user has one or more long-term API access keys.
This is a credential-surface edge, not an exploit primitive. It matters for exposure and persistence analysis: long-term keys can be abused if they are leaked, left active too long, or not rotated.
Pair it with AWS_CREATE_ACCESS_KEY and AWS_DELETE_ACCESS_KEY to get the full credential lifecycle picture.
Identification
AWS CLI
List keys for one user:
aws iam list-access-keys --user-name TargetUserGet last-used context for a key:
Enumerate all users with keys:
AWS Console
Open IAM -> Users -> select user.
Open Security credentials.
Review access key IDs, status, and age.
Exploitation
This edge has no exploit path of its own. The credential just exists. Whether it is dangerous depends on whether the key has been compromised, or whether an attacker has the ability to replace or manage it.
Mitigation
Remove unused access keys and disable inactive keys quickly.
Enforce rotation and key age thresholds.
Prefer temporary credentials from roles instead of long-term user keys.
Alert on old active keys and high-risk usage locations.
Detection
Monitor CloudTrail for lifecycle events:
CreateAccessKeyUpdateAccessKeyDeleteAccessKey
Also track API usage by key ID against a known baseline to catch anomalous activity.
References
Last updated
Was this helpful?