Check ID:
Provider: AWS
Service:
Severity: HIGH
Categories:
Resource type:
bedrock_api_key_no_administrative_privilegesProvider: AWS
Service:
bedrockSeverity: HIGH
Categories:
gen-ai, identity-accessResource type:
AwsIamAccessKeyWhat this check verifies
Bedrock API keys linked to IAM users are evaluated for excessive permissions, including policies that grant full access (* or bedrock:*) or enable privilege escalation. The finding highlights keys whose attached or inline policies provide broad or escalating capabilities.
Risk
Over-privileged Bedrock API keys weaken confidentiality, integrity, and availability. If compromised, an attacker could:- Escalate IAM rights and persist access
- Invoke models at scale to exfiltrate data or incur high costs
- Modify Bedrock settings, disrupting operations
Recommendation
Enforce least privilege on Bedrock keys:- Avoid wildcards like
*andbedrock:*; allow only required actions - Prevent identity changes by disallowing
iam:* - Prefer short-term credentials with rotation and MFA
- Use permissions boundaries and SCPs as guardrails
- Review usage and tighten policies via access analysis
Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
aws iam delete-service-specific-credential —user-name <username> —service-specific-credential-id <credential-id>
References
- https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege
- https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-started-reduce-permissions.html
- https://docs.aws.amazon.com/bedrock/latest/userguide/api-keys.html
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = bedrock_api_key_no_administrative_privileges. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks