Snowflake Management, Governance & Collaboration
Emily Melhuish
Technical Curriculum Developer, Snowflake



CREATE MASKING POLICY mask_credit_score
AS (val NUMBER) RETURNS NUMBER ->
CASE
WHEN IS_ROLE_IN_SESSION('CREDIT_ADMIN') THEN val
ELSE -9999
END;
ALTER TABLE core.users
MODIFY COLUMN credit_score
SET MASKING POLICY mask_credit_score;



CREATE ROW ACCESS POLICY region_filter
AS (region_col VARCHAR) RETURNS BOOLEAN ->
CASE
WHEN IS_ROLE_IN_SESSION('US_ANALYST') THEN region_col = 'US'
WHEN IS_ROLE_IN_SESSION('EU_ANALYST') THEN region_col = 'EU'
ELSE FALSE
END;
ALTER TABLE core.users
ADD ROW ACCESS POLICY region_filter ON (region);

Snowflake Management, Governance & Collaboration