Consider the following scenario: You are tasked with designing a setup script for a Snowflake Native Application. This script needs to perform several tasks including creating a database role, granting privileges to the role, and creating a schem a. Your application also provides a configuration table that needs to be populated during the setup process. Which of the following set of statements are true regarding the order of operations and security best practices within the setup script? (Choose all that apply)
Correct Answer: A,B,D
Option A is correct because creating the role first allows for immediate ownership and control over the newly created schema. Option B is correct as using the 'APPLICATIONS keyword when granting privileges is a key security best practice in Snowflake Native Apps. It allows for controlled access to the data within the Application. Option D is correct because idempotency ensures the setup process can be retried if interrupted without causing issues. Option C is incorrect because, While application configuration is important, object creation, like defining schemas and roles usually must preceed loading configuration, and depend on the existence of these core components. Option E is wrong since It should require minimal to zero manual intervension.