Example SCPs for Amazon Bedrock - Amazon Organizations
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Example SCPs for Amazon Bedrock

Deny access to specific Amazon Bedrock models

The following service control policy (SCP) blocks access to specific Amazon Bedrock models or model families across an entire organization. This policy is useful when you want to prevent the use of certain models that may not meet your organization's compliance, cost, or security requirements.

The policy denies all Amazon Bedrock actions for the specified foundation model. In this example, the policy blocks access to Deepseek models. The wildcard (.*) in the resource ARN matches all versions and variants of the specified model family. You can add additional model ARNs to the Resource array to block access to other models as needed.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyModelAccessEverywhere", "Effect": "Deny", "Action": "bedrock:*", "Resource": [ "arn:aws:bedrock:*:*:foundation-model/deepseek.*" ] } ] }

Restrict access to specific Amazon Bedrock models or model families across an entire organization

The following service control policy (SCP) restricts users and roles from accessing unapproved Amazon Bedrock foundation models. This policy denies access to all Amazon Bedrock models except those you explicitly specify in the NotResource element.

To use this policy, replace <model-unique-identifier> with the specific models you want to allow. For example, use amazon.* to allow all Amazon foundation models, or specify individual model IDs like amazon.titan-text-premier-v1:0 for more granular control. You can add multiple model ARNs to the NotResource array to allow access to several approved models.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "PermittedModels", "Effect": "Deny", "Action": "bedrock:*", "NotResource": [ "arn:aws:bedrock:*:*:foundation-model/<model-unique-identifier>" ] } ] }

Restrict creation and use of Amazon Bedrock API keys

The following service control policy (SCP) restricts users from creating and using Amazon Bedrock service-specific credentials API keys. Service-specific credentials API keys provide programmatic access to Amazon Bedrock outside of standard IAM role-based authentication, which can create security risks if not properly managed. This policy blocks both the creation of new service-specific credentials API keys and the use of existing ones.

The policy works by denying two actions: iam:CreateServiceSpecificCredential prevents users from generating new Amazon Bedrock service-specific credentials API keys, while bedrock:CallWithBearerToken prevents the use of bearer tokens (service-specific credentials API keys) to authenticate Amazon Bedrock API calls.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iam:CreateServiceSpecificCredential", "Resource": "*", "Condition": { "StringEquals": { "iam:ServiceSpecificCredentialServiceName": "bedrock.amazonaws.com" } } }, { "Effect": "Deny", "Action": "bedrock:CallWithBearerToken", "Resource": "*" } ] }

Restrict creation of long-term Amazon Bedrock API keys valid beyond 30 days

The following service control policy (SCP) restricts users from creating long-term Amazon Bedrock service-specific credentials API keys that are valid for more than 30 days. By limiting service-specific credentials API keys to 30 days or less, you reduce this risk and encourage regular credential rotation.

The policy denies the creation of Amazon Bedrock service-specific credentials when the requested validity period exceeds 30 days. The iam:ServiceSpecificCredentialAgeDays condition key checks the requested expiration time during credential creation. You can adjust the 30-day limit to match your organization's security requirements by changing the value in the NumericGreaterThanEquals condition.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iam:CreateServiceSpecificCredential", "Resource": "*", "Condition": { "StringEquals": { "iam:ServiceSpecificCredentialServiceName": "bedrock.amazonaws.com" }, "NumericGreaterThanEquals": { "iam:ServiceSpecificCredentialAgeDays": "30" } } } ] }