Регистрация  |  Вход

Защита данных: masking, шифрование, недоступность для репортов

Тема защита данных не новая, в самом СФ все уже должно быть как-то решено с этими вопросами, но я столкнулся с этим впервые, и не помню, чтобы мы обсуждали эту тему.

ситуация: есть текстовое поле, в котором хранится какая уникальная комбинация цифр (введенная пользователем), и это поле используется в коде то там, то здесь, чтоб найти нужную запись.

но тут клиенты говорят, что эта "комбинация цифр" - чувствительная информация, и нужно:

(1) Маскировать ****** при вводе пользователем (используется кастомная VF page как логин flow). Маскировать сохраненное значение, когда оно например выводится на стандартном лейауте.

(2)Должно храниться зашифрованным

(3) должно быть доступно пользователю, но не доступно для стандартных репортов, чтоб, не ровен час, пользователь не вытянул все это через репорт и не унес домой

Как это все решается стандартными средствами и что нужно кодить?

Тема защита данных не новая, в самом СФ все уже должно быть как-то решено с этими вопросами, но я столкнулся с этим впервые, и не помню, чтобы мы обсуждали эту тему.

ситуация: есть текстовое поле, в котором хранится какая уникальная комбинация цифр (введенная пользователем), и это поле используется в коде то там, то здесь, чтоб найти нужную запись.

но тут клиенты говорят, что эта "комбинация цифр" - чувствительная информация, и нужно:

(1) Маскировать ****** при вводе пользователем (используется кастомная VF page как логин flow). Маскировать сохраненное значение, когда оно например выводится на стандартном лейауте.

(2)Должно храниться зашифрованным

(3) должно быть доступно пользователю, но не доступно для стандартных репортов, чтоб, не ровен час, пользователь не вытянул все это через репорт и не унес домой

Как это все решается стандартными средствами и что нужно кодить?


Пожелаю удачи с этим.

Требования противоречивые.

Стандартными средствами можно организовать только часть.

Например можно сделать поле Encrypted. В этом случае реальное значение поля будут видеть только пользователи с соответсвующей галочкой в профиле. Но это исключает поиск записей по значению в этом поле. Для этого нужно делать костыль. Если система не высоко нагруженная это прокатывает, в обратном случае будут наблюдаться проблемы с быстродействием.

Пожелаю удачи с этим.

Требования противоречивые. 

Стандартными средствами можно организовать только часть.

Например можно сделать поле Encrypted. В этом случае реальное значение поля будут видеть только пользователи с соответсвующей галочкой в профиле. Но это исключает поиск записей по значению в этом поле. Для этого нужно делать костыль. Если система не высоко нагруженная это прокатывает, в обратном случае будут наблюдаться проблемы с быстродействием.

wilder
Для этого нужно делать костыль.

рассказывай,

кстати, зачем Data Sensitivity Level настройка при создании поля, я думал это уже как-то решает проблемы

[quote="wilder"]Для этого нужно делать костыль.[/quote]

рассказывай,

кстати, зачем Data Sensitivity Level настройка при создании поля, я думал это уже как-то решает проблемы

Den Brown
кстати, зачем Data Sensitivity Level настройка при создании поля, я думал это уже как-то решает проблемы

сама настройка Data Sensitivity Level при создании полей ни как не влияет на функциональность.
Это сделано для то чтобы соответствовать всяким требованиями compliance (в US и Европе они разные)
и чтоб CISOs (ответственные за безопасность данных) могли спать спокойней, знать точно где находиться sensitive дата (reports) и отчитаться при audit проверках.


wilder
Например можно сделать поле Encrypted.

Если использовать Shield Platform Encryption то на маскинг или для того кто видит это поле (field's value) это не помогает, так как encryption is On Rest - на уровне базы данных

есть Data Masking, но оно только для Sandboxes

так что или пробовать использовать Field Level Security + Permission Sets, чтоб определить кому видно какие поля или как написал wilder - делать костыли

[quote="Den Brown"]кстати, зачем Data Sensitivity Level настройка при создании поля, я думал это уже как-то решает проблемы[/quote]

сама настройка Data Sensitivity Level при создании полей ни как не влияет на функциональность.
Это сделано для то чтобы соответствовать всяким требованиями compliance  (в US и Европе они разные)
и чтоб CISOs (ответственные за безопасность данных) могли спать спокойней, знать точно где находиться sensitive дата (reports) и отчитаться при audit проверках.


[quote="wilder"]Например можно сделать поле Encrypted.[/quote]

Если использовать Shield Platform Encryption то на маскинг или для того кто видит это поле (field's value) это не помогает, так как encryption is On Rest - на уровне базы данных

есть Data Masking, но оно только для Sandboxes

так что или пробовать использовать Field Level Security + Permission Sets, чтоб определить кому видно какие поля или как написал wilder - делать костыли