#user-defined-functions
#определяемые пользователем-функции
Вопрос:
У меня есть элемент PII в ТЕКСТОВОМ поле, который необходимо замаскировать / очистить в моей базе данных snowflake. я мог бы добиться этого с помощью JavaScript, нужно реализовать то же самое с помощью функции SQL UDF.
НАПРИМЕР: я Джон, это мой SSN 111-11-1111
Вывод :
Я XXXX, это мой XXX XXX-XX-XXXX
Комментарии:
1. О каком языке, БД и т. Д. Вы говорите? Существует несколько способов маскировки данных, я могу определить ваш собственный, в зависимости от каждого поля.
2. В Snowflake с использованием скалярной функции SQL UDF.
3. И вы уже рассмотрели это? Кстати, при использовании динамической маскировки данных UDF означает определяемую пользователем функцию, поэтому излишне говорить «функция» после UDF. : P
4. Привет @Andrew, да, я прошел через это. Я рассказываю о политике маскирования. В моем случае мне нужно, чтобы данные были замаскированы, как указано в ожидаемом
5. Все еще там, @Naveenraj? Вы пробовали мой ответ?
Ответ №1:
Если вы хотите заменить любую букву или цифру на a *
, я думаю, вы можете использовать что-то вроде этого:
case
when current_role() in ('ADMIN') then val
else regexp_replace(val, '[A-Za-zd]', '*')
end;
Больше информации в этой статье:
https://docs.snowflake.com/en/user-guide/security-column-ddm-use.html