menotron
Valued Contributor

Hi @Dnirmania, You could achieve something similar using this UDF:

%sql
CREATE OR REPLACE FUNCTION ryanlakehouse.default.column_masking(column_value STRING, groups_str String) 
  RETURNS STRING 
  LANGUAGE SQL
  COMMENT 'Return the column value if user is part of group otherwise return masked value' 
  RETURN CASE
  WHEN array_contains(
    transform(
      split(groups_str, ','),
      x -> is_account_group_member(trim(x))
    ),
    True
  ) THEN column_value
  ELSE repeat("*", len(column_value))
END

 

View solution in original post