AWSAWS Certified Generative AI Developer - Professional2026-103.3 Implement AI governance and compliance mechanisms
Turn governance requirements into tested controls
Completed by the knowledge check
Learning objective
Translate regulatory obligations and organizational policies into enforceable GenAI controls and documented risk-register entries.
Core idea
A governance requirement becomes operational when you can identify the prohibited or required behavior, the control that implements it, the evidence that tests it, and the person who accepts remaining risk. A policy saying “use approved AI safely” is too broad to enforce. Break it into decisions about access, processing routes, content release, evidence retention, and exceptions.
Start with an obligation that your legal or governance owner has interpreted for the workload. Do not infer a statutory requirement from the presence of an AWS feature. Then express the obligation as a testable invariant, such as “requests without the approved guardrail version cannot invoke a model” or “investigation evidence remains protected for the approved period.”
AWS mechanisms implement technical controls. They do not decide which law applies, define your organization’s acceptable risk, or make a workload compliant merely because you enable them. Your risk register connects that interpretation to the deployed controls and their measured coverage.
How it works
Translate each obligation into a control contract
For each obligation, record the applicable business process, affected data, threat or failure, and expected system behavior. Separate mandatory requirements from internal preferences. Identify the relevant boundary: organizational permissions, application authorization, inference content, or evidence storage.
Define a control contract with an owner, configuration identity, positive and negative tests, and the evidence needed to review it. A negative test should exercise a realistic bypass. For example, testing that a request with a guardrail succeeds does not prove requests without it are denied.
Use the following mapping as a starting point:
| Requirement interpreted by the organization | Concrete mechanism | Evidence to collect |
|---|---|---|
| Only permitted AWS actions are available in governed accounts | AWS Organizations service control policy (SCP), together with IAM permissions | Attached policy and tests using the workload’s principal |
| Inference requires a designated guardrail | IAM condition key bedrock:GuardrailIdentifier with explicit deny | Requests with the approved identifier and requests with an absent or different identifier |
| Operational records have a defined retention period | CloudWatch Logs PutRetentionPolicy, with logGroupName and retentionInDays | Configured log-group policy and retrieval checks |
| Evidence versions resist premature deletion | S3 Object Lock retention or legal hold | Protected object-version identity and tested retention settings |
Treat these as different controls with different scopes. A content filter does not establish source authorization. A storage-retention setting does not prove the application emitted a complete decision record.
Enforce permissions and content separately
An SCP sets the maximum permissions available to IAM users and roles in member accounts. It does not grant access; IAM permissions are still required. SCPs require an organization with all features enabled. They do not restrict principals in the management account or service-linked roles. Record these scope boundaries rather than reporting “organization-wide enforcement” without qualification.
For Bedrock inference, AWS documents bedrock:GuardrailIdentifier enforcement for Converse, ConverseStream, InvokeModel, and InvokeModelWithResponseStream. Its example uses an explicit deny to reject inference with a different guardrail identifier, including a numeric version. Bind the deployment to the approved configuration, and test omitted, wrong, and permitted values.
This control enforces guardrail inclusion on the documented inference paths. It does not prove the guardrail’s policies satisfy the requirement. Test policy behavior independently, and map interventions to application outcomes. See 3.1.1 for policy selection and 3.1.2 for enforcement before content release. End-user authorization is another boundary; see 2.3.7.
Define evidence retention before collecting data
PutRetentionPolicy configures a log group’s retention in days from the API’s supported values. It is not a promise of deletion at the exact expiration instant: CloudWatch Logs typically takes up to 72 hours to delete expired events, and rare cases can take longer. If an obligation concerns deletion timing, include that behavior in the interpretation and evidence plan.
S3 Object Lock protects individual object versions and requires S3 Versioning. In compliance mode, a protected version cannot be overwritten or deleted by any user, including the account root user, during retention; the retention period cannot be shortened. Governance mode permits bypass with s3:BypassGovernanceRetention and the explicit x-amz-bypass-governance-retention:true request header. A legal hold has no expiration date and remains until removed.
Select the mechanism from the approved retention requirement. Do not equate governance-mode protection with protection against every privileged operator. Preserve the version ID because a key can acquire another version while an earlier version remains locked.
Evaluate deployed configuration
Use AWS Config rules as the detective layer for ongoing configuration-compliance evidence, and deploy the selected managed or custom rules and remediation actions as a conformance pack. AWS documents deployment as one entity in an account and Region or across an AWS Organizations organization. Match rule coverage to the control contract: configuration evaluations do not replace behavioral tests of inference policy.
Make the risk register explain what remains
Use an organization-owned risk-register schema with fields grouped by purpose:
- Identity and scope: obligation ID, risk ID, workload, and affected data.
- Control evidence: owner, AWS resource/configuration identifiers, and test evidence.
- Risk decisions: residual risk, exception approver, review date, and remediation deadline.
These are your governance fields, not an AWS-required record format.
Distinguish the risk before controls from the residual risk after verified controls. An exception should state the exact route or population it permits and when it expires. Reopen review when model routing, guardrail configuration, source permissions, or evidence collection changes.
Key distinctions and trade-offs
Policy versus enforcement: A policy states intent. IAM, SCPs, guardrail configuration, and storage controls implement only the boundaries they govern.
Prevention versus detection: An explicit deny prevents a covered API request. A decision log explains what occurred. Neither substitutes for the other.
Retention versus minimization: Keeping enough evidence supports investigation, but collecting unnecessary sensitive content creates another risk. Record the decision and stable references where full content is unnecessary.
Risk acceptance versus missing evidence: An accountable owner can accept a documented residual risk. An untested control is uncertainty, not evidence that the risk is low.
Architecture / decision scenario
A financial-services assistant summarizes approved internal procedures. Governance interprets the requirements as mandatory guardrail use, restricted AWS actions, and preservation of investigation evidence. The team assigns separate control owners and creates one risk entry for bypass through an ungoverned invocation route.
The deployment uses SCP restrictions in member accounts and IAM enforcement of the approved guardrail identifier and numeric version. Tests attempt invocation with the approved version, an omitted guardrail, and an alternate identifier. They also test the actual workload role rather than an administrator.
The team sets CloudWatch Logs retention through PutRetentionPolicy and preserves selected evidence versions with S3 Object Lock using the approved mode. It records the log-group policy, object-version identifiers, and test results in the risk entry, then links ongoing AWS Config rule evaluations from its conformance pack for the covered resource configurations.
A proposed alternate route uses InvokeModelWithBidirectionalStream, which is not among the APIs the AWS guardrail-enforcement page documents for this enforcement. The owner must approve compensating controls or reject that route before release. A successful test of the original route does not close the alternate-route risk.
Common exam traps
- Treating an SCP as a grant of IAM permissions.
- Assuming SCP coverage includes the management account and service-linked roles.
- Equating mandatory guardrail inclusion with validated policy effectiveness.
- Calling log retention an exact deletion deadline.
- Treating an S3 key as the identity of protected evidence.
- Marking risk accepted without an owner, scope, evidence, and review condition.
What to remember
Translate obligations into observable behavior before selecting AWS mechanisms. Attach enforcement tests and evidence identities to each control. Record uncovered routes, privileged bypasses, and retention limitations as residual risks. Governance is a traceable decision process whose controls must continue to match the deployed workload.
Knowledge check
Governance interprets a requirement as “no inference request may run without the approved guardrail version.” The assistant calls Converse with a workload role. Which control enforces the requirement before a request runs?
bedrock:GuardrailIdentifier for the workload rolebedrock:GuardrailIdentifier condition key, used with an explicit deny, rejects covered inference calls whose guardrail identifier or version is absent or different. A Config rule detects configuration after the fact, a prompt is not enforcement, and a guardrail’s own policies act only once the guardrail is attached.A service control policy denies bedrock:CreateModelInvocationJob across the organization. A tester still starts a batch job using a role in the management account. What explains the result?
Investigation evidence must stay undeletable for seven years by any user, including the account root user, and the period must not be shortened. Which S3 Object Lock configuration fits?
s3:BypassGovernanceRetention denied to everyoneTests prove that the approved guardrail is enforced on Converse and InvokeModel. A new voice feature proposes InvokeModelWithBidirectionalStream, which the enforcement documentation does not list. What should happen before release?
Converse , ConverseStream , InvokeModel , and InvokeModelWithResponseStream . A proven control on one route says nothing about another, so the gap is a residual risk that an accountable owner must accept with compensating controls or reject. An untested route is uncertainty, not low risk.A policy requires deleting operational log events at 30 days. The team sets retentionInDays to 30 with PutRetentionPolicy. What should the control record?