- - Configure a catalog source.
For more information about configuring a catalog source for Snowflake, see
Snowflake.
- - Grant the following permissions to the connection associated with your Snowflake cloud data platform:
GRANT MANAGE GRANTS ON ACCOUNT TO [IDMC_USER_ROLE];
GRANT CREATE ROLE ON ACCOUNT TO [IDMC_USER_ROLE];
- - For use with data filter policies, also grant these permissions on your Snowflake cloud data platform.
Note the following about Snowflake permissions:
- ▪ Your Snowflake account needs to be able to enforce row-level policies.
- ▪ In permission grants, if you do not specify database and schema names, Data Access Management creates a default database called CDAM_INTERNAL_STATE and a default schema called PUBLIC.
If you want Informatica to have permission to create databases in Snowflake, grant the following permission once where you store Snowflake row access policies:
GRANT CREATE DATABASE ON ACCOUNT TO [IDMC_USER_ROLE];
On every table and view that you want to apply Snowflake row access policies, you can grant the following permissions instead of the GRANT APPLY ROW ACCESS POLICY ON ACCOUNT TO [IDMC_USER_ROLE] permission:
GRANT OWNERSHIP ON [TABLE_NAME] TO [IDMC_USER_ROLE];
GRANT OWNERSHIP ON [VIEW_NAME] TO [IDMC_USER_ROLE];
Grant the following permissions on every table that you want to apply Snowflake row access policies:
GRANT USAGE ON [DATABASE_NAME] TO [IDMC_USER_ROLE];
GRANT USAGE ON [SCHEMA_NAME] TO [IDMC_USER_ROLE];
GRANT SELECT ON TABLE [DATABASE_NAME]."INFORMATION_SCHEMA"."POLICY_REFERENCES";
GRANT SELECT ON VIEW [DATABASE_NAME]."INFORMATION_SCHEMA"."POLICY_REFERENCES";
If you do not want Informatica to have permission to create databases in Snowflake, grant the following permissions once where you store Snowflake row access policies:
GRANT CREATE SCHEMA ON [DATABASE_NAME] TO [IDMC_USER_ROLE];
GRANT USAGE ON [DATABASE-NAME] TO [IDMC_USER_ROLE];
GRANT USAGE ON [SCHEMA-NAME] TO [IDMC_USER_ROLE];
GRANT CREATE ROW ACCESS POLICY ON [SCHEMA-NAME] TO [IDMC_USER_ROLE];
GRANT APPLY ROW ACCESS POLICY ON ACCOUNT TO [IDMC_USER_ROLE];
You can grant the following permissions instead of the GRANT APPLY ROW ACCESS POLICY ON ACCOUNT TO [IDMC_USER_ROLE] permission on every table and view that you want to apply Snowflake row access policies:
GRANT OWNERSHIP ON [TABLE_NAME] TO [IDMC_USER_ROLE];
GRANT OWNERSHIP ON [VIEW_NAME] TO [IDMC_USER_ROLE];
Grant the following permissions on every table that you want to apply Snowflake row access policies:
GRANT USAGE ON [DATABASE_NAME] TO [IDMC_USER_ROLE];
GRANT USAGE ON [SCHEMA_NAME] TO [IDMC_USER_ROLE];
GRANT SELECT ON TABLE [DATABASE_NAME]."INFORMATION_SCHEMA"."POLICY_REFERENCES";
GRANT SELECT ON VIEW [DATABASE_NAME]."INFORMATION_SCHEMA"."POLICY_REFERENCES";