Answers to common questions about the AI/ML Security Assessment framework. For error symptoms and fixes, see the Troubleshooting Guide.
The security checks do not modify your AI/ML workloads or data. They read resource configuration and write assessment artifacts to S3 buckets that the framework owns.
The framework does create and manage its own resources: CloudFormation stacks, IAM roles, Lambda functions, a Step Functions state machine, CodeBuild projects, S3 buckets, and, when you provide an email address, an Amazon SNS topic and an Amazon EventBridge rule for build notifications. At the start of each run it removes the current CSV, HTML, and JSON objects from its own SAM assessment bucket before writing new artifacts. Earlier object versions and delete markers remain until you remove them; see the Cleanup Guide.
Typical times, which vary with the number of resources, regions, and optional assessments:
- Single account, one region: 5-10 minutes
- Multi-account, about 10 accounts: 15-20 minutes
- Multi-account, 50 or more accounts: 30-45 minutes
In multi-account mode, CodeBuild deploys account stacks sequentially and starts
each account's Step Functions execution without waiting for the previous one.
Those executions can overlap; CodeBuild polls and collects their results later
in post_build. Within each account, regions are scanned in parallel (up to
five at a time).
- Production AI/ML workloads: weekly or every two weeks
- Development and test environments: monthly
- After significant changes: always (new models, configuration changes, IAM updates)
- Compliance requirements: as your organization's security policies require
To run assessments on a schedule, see Can I schedule automated assessments?
The framework is validated and supported only in the standard AWS commercial
partition (aws). Leave TargetRegions empty to scan only the deployment
region, or provide a comma- or space-separated list of commercial regions.
AWS GovCloud (US) (aws-us-gov) and AWS China (aws-cn) are not validated or
supported. Supporting them requires code changes, a partition-specific review
of service availability, and end-to-end deployment testing; template changes
alone are not enough.
Yes. The assessment completes and reports N/A for checks that have no
resources to assess. This is useful as a security baseline before you deploy
AI/ML workloads.
A typical single-account, single-region run costs roughly $0.50-$2.00:
- AWS Lambda: $0.10-$0.50
- AWS Step Functions: $0.05-$0.25 (state transitions)
- Amazon S3: $0.01-$0.10 (report storage)
- AWS CodeBuild: $0.10-$0.50 (billed per build minute)
Lambda and Step Functions costs grow with the number of accounts, regions, and selected assessments. For each account, one run makes this many Lambda invocations:
4 + (R × S) + G + (R × O)
R = number of regions scanned
S = number of selected direct service assessments (0-4: Amazon Bedrock,
Amazon SageMaker AI, Amazon Bedrock AgentCore, AWS Agent Registry)
G = 1 if Responsible AI GRC or OWASP is enabled, otherwise 0
O = 1 if OWASP is enabled, otherwise 0
The fixed 4 are bucket cleanup, IAM permission caching, region resolution, and report generation. For example, one account with all four services selected, three regions, and both optional assessments enabled makes 4 + 12 + 1 + 3 = 20 invocations.
AWS Organizations API calls are free. In multi-account mode, the CodeBuild
compute type, and so its per-minute price, depends on ConcurrentAccountScans;
see the table in
Troubleshooting §9.
For example, a 30-minute multi-account build costs roughly $0.15 at the
default Three and $0.60 at Twelve.
Only storage:
- Amazon S3: report storage, about $0.023 per GB-month in S3 Standard. Old object versions also count, because the buckets are versioned.
- Amazon CloudWatch Logs: log storage for Lambda and CodeBuild logs. Set a retention period on the log groups to limit it.
Lambda, Step Functions, and CodeBuild are billed per use and have no idle cost. Prices vary by region; see each service's pricing page.
You can turn whole service assessments on or off with
EnableBedrockAssessment, EnableSageMakerAssessment,
EnableAgentCoreAssessment, and EnableAgentRegistryAssessment, and turn on
the optional assessments with EnableResponsibleAIGRCAssessment and
EnableOWASPAssessment. Individual checks cannot be turned off; filter them in
the HTML report instead. See
Selecting Service Assessments.
Yes. To add a check to an existing service, see Adding a New Check Inside an Existing Service. To add a new service, see Adding New AI/ML Service Assessments.
Each run writes:
- CSV files, one per assessment (and per region for regional assessments), in each account's folder of the report bucket
- HTML reports for interactive viewing, including a consolidated report in multi-account mode
- A changes since last assessment HTML page and CSV (see Changes Since Last Assessment)
To send findings to a SIEM or another tool, process the CSV files from the
report bucket. Every CSV shares the columns Check_ID, Finding,
Finding_Details, Resolution, Reference, Severity, Status, and
Region.
Yes. Use Amazon EventBridge Scheduler or an EventBridge scheduled rule to start
the assessment CodeBuild project (AIMLSecurityCodeBuild for single-account,
AIMLSecurityMultiAccountCodeBuild for multi-account). The schedule's role must
trust the EventBridge service and allow codebuild:StartBuild on the project.
Example: weekly EventBridge rule with the AWS CLI
aws events put-rule \
--name "WeeklyAIMLAssessment" \
--schedule-expression "cron(0 2 ? * MON *)"
aws events put-targets \
--rule "WeeklyAIMLAssessment" \
--targets '[{
"Id": "1",
"Arn": "arn:aws:codebuild:<region>:<account-id>:project/<project-name>",
"RoleArn": "arn:aws:iam::<account-id>:role/<eventbridge-codebuild-start-role>"
}]'For a rule, the target role must trust events.amazonaws.com. For
EventBridge Scheduler, it must trust scheduler.amazonaws.com.
Every scheduled run also gets a Changes Since Last Assessment report that compares it with the account's previous run.
Run time depends on:
- Number of resources: accounts with many Amazon SageMaker AI notebooks or Amazon Bedrock resources take longer
- API throttling: AWS API rate limits can slow large environments
- Number of accounts: CodeBuild deploys account stacks sequentially, while their Step Functions executions can overlap; deployment and result collection still take longer as the account count grows
- Region scope: each region in
TargetRegionsadds another set of service scans - Optional assessments:
EnableResponsibleAIGRCAssessmentadds theFS-checks;EnableOWASPAssessmentadds theOW-checks and also runs theFS-assessment as a source
If builds time out, increase CodeBuildTimeout, reduce TargetRegions, or split
accounts into batches with MultiAccountListOverride. The provided CodeBuild
deployment does not expose a concurrency setting: MaxRegionConcurrency is a
SAM template parameter that buildspec.yml does not pass. Lambda timeouts are
set in the SAM templates. See also
Troubleshooting §9.
All assessment data stays in your AWS accounts:
- Reports are stored in your S3 buckets; you control retention and access.
- Logs are in your Amazon CloudWatch Logs; you control retention.
- No data is sent to external services or third parties.
See Permissions Required for each role, what it can do, and the template that defines it.
No. It evaluates your configuration against AWS security best practices and can support compliance work, for example by showing controls and by finding misconfigurations that could lead to violations. It is not a formal compliance audit and does not cover every requirement of any compliance framework. Work with your compliance team to decide how it fits into your program.
The core and Agentic AI Security checks are derived from the AWS Well-Architected Generative AI Lens and the Agentic AI Lens, which apply the Security pillar to AI/ML workloads. The Security pillar questions are:
| Question | Topic |
|---|---|
| SEC 1 | Security foundations: operating your workload securely |
| SEC 2 | Identity management: authentication for people and machines |
| SEC 3 | Permissions management for people and machines |
| SEC 4 | Detecting and investigating security events |
| SEC 5 | Protecting network resources |
| SEC 6 | Protecting compute resources |
| SEC 7 | Data classification |
| SEC 8 | Protecting data at rest |
| SEC 9 | Protecting data in transit |
| SEC 10 | Incident response |
| SEC 11 | Application security |
Most checks relate to permissions (SEC 2, SEC 3), logging and detection (SEC 4), network isolation (SEC 5), and encryption (SEC 8, SEC 9). The assessment is not a Well-Architected review; it checks specific configurations and does not answer the pillar questions for you.