Exam-style
A claims assistant on Bedrock regularly receives customer names, addresses and policy numbers in free-text input, and that same text lands in the model invocation logs. The organisation wants one PII policy applied to every model call, on the prompt and on the response, rather than twelve bespoke implementations in the calling applications. What is the built-in Bedrock control?
Reveal the answer
C. A Bedrock Guardrail with a sensitive-information policy set to mask or block PII on input and output
The Guardrail sensitive-information policy is the built-in control: one versioned policy, defined once, masking or blocking PII in the prompt before it reaches the model and in the response before it is returned. It is not automatic. Each caller passes the guardrail identifier and version on the model call, so what makes it non-optional across twelve applications is the bedrock:GuardrailIdentifier condition key on InvokeModel and Converse, or a shared facade that injects the pair. Masking stops at inference. The input field in a Bedrock invocation log holds the original request whatever the guardrail did, so the logs need a CloudWatch Logs data protection policy of their own. Macie and Comprehend both detect PII accurately, but they run after the fact over data already written. A Lambda in front returns the detection logic to bespoke code that twelve teams then depend on. Tightening the bucket policy limits who can read the leak rather than preventing it, which is why the log store gets a customer managed KMS key and tight access on top of the Guardrail, not instead of it.
Q. Keep customer PII out of prompts and logs. What is the built-in control?
A. A Bedrock Guardrail with a sensitive-information policy masks or blocks PII in the prompt before it reaches the model, and in the response before it is returned. The policy is defined once as a versioned resource, and every caller passes its identifier and version on the model call. The bedrock:GuardrailIdentifier condition key on InvokeModel and Converse stops a team shipping without one, as does a shared facade that injects the pair. Masking stops at inference: a Bedrock invocation log records the original request whatever the guardrail did, so mask the logs separately with a CloudWatch Logs data protection policy. Encrypt the log store with a customer-managed KMS key.
Why? The log that proves compliance can itself leak, and guardrail masking does not reach it.