A data steward must choose between a masking policy and a row access policy for several governance requirements on the same SALES table. For which TWO requirements is a row access policy, rather than a masking policy, the correct Snowflake control? Select TWO.
- AAn auditor role must be able to read full unmasked salary figures while every other role sees a redacted placeholder in that column.
- BEach regional manager must see only the order rows for the territory codes assigned to their role, with all other rows absent from the result set. Correct
- CRows for closed accounts must be suppressed from analyst queries while remaining queryable by the compliance role that the policy maps to those rows. Correct
- DCard numbers must be stored only as non-sensitive tokens, with the raw values held by an external provider and detokenised on demand for authorised roles.
Why A is wrong: Tempting because access depends on the role, but transforming a single column's value while keeping every row is a masking policy task, not row filtering.
Why B is correct: Correct, because deciding which rows appear based on the querying context is exactly what a row access policy evaluates per row to permit or remove it.
Why C is correct: Correct, because conditionally including or excluding whole rows based on the active role and row data is the defining behaviour of a row access policy.
Why D is wrong: Tempting because it protects sensitive data, but this token-in, value-out pattern is external tokenisation invoked from a masking policy, not row filtering.