ADA-C01 Question 66
Single answerEnable security and access control for AI/ML modelsA financial services company is enabling data scientists to use Cortex AI functions in a shared analytics environment. The security team requires that only members of the DS_ROLE role can invoke AI/ML model functions, while analysts using other roles must be prevented from using those functions even if they can query the underlying tables. As the Snowflake administrator, which action should you take to meet this requirement with the least privilege model?
- A
Grant the SNOWFLAKE.CORTEX_USER database role to DS_ROLE, and do not grant that database role to analyst roles.
- B
Grant USAGE on the SNOWFLAKE database to DS_ROLE and revoke SELECT on source tables from analyst roles.
- C
Create a masking policy on the prompt column so only DS_ROLE can call Cortex functions.
- D
Grant EXECUTE MANAGED TASK on the schema containing the source data to DS_ROLE.
Show answer and explanation
Correct answer: A
Explanation
To enable security and access control for AI/ML models in Snowflake, administrators should use Snowflake's role-based access control model and grant only the specific built-in database roles required for the feature. For Cortex AI functions, Snowflake provides the SNOWFLAKE.CORTEX_USER database role to control who can invoke those functions. This is the appropriate control when the requirement is to separate model/function usage from ordinary data access. Granting broad database privileges, task privileges, or applying masking policies does not authorize model invocation. This follows Snowflake best practice: assign feature-specific privileges to the minimum set of roles that need them, and keep data access controls separate from AI feature authorization.
- A. Correct.
Correct. Access to Snowflake Cortex AI functionality is controlled through Snowflake-provided database roles, including SNOWFLAKE.CORTEX_USER. Granting this database role only to DS_ROLE allows members of that role to invoke Cortex functions, while other roles without the database role cannot use those AI functions. This aligns with least privilege because it grants only the specific AI capability required rather than broad access to unrelated objects.
- B. Incorrect.
Incorrect. USAGE on the SNOWFLAKE database does not by itself authorize use of Cortex AI functions. Also, revoking SELECT on source tables changes data access, which is a different control from authorization to invoke AI/ML functions. The scenario explicitly states analysts may still need table query access, so this does not satisfy the requirement.
- C. Incorrect.
Incorrect. Masking policies govern visibility of data values, not entitlement to invoke Cortex AI/ML functions. A masking policy might protect sensitive prompt text, but it does not replace the required role-based authorization for using Cortex functions. This option reflects a common misconception that data governance policies control feature execution privileges.
- D. Incorrect.
Incorrect. EXECUTE MANAGED TASK is related to running serverless tasks, not to enabling or restricting access to AI/ML model functions. Granting this privilege would not allow DS_ROLE to use Cortex functions and would introduce unrelated permissions.