Я помню мы уже вскользь (в слове два мягких знака подряд!) обсуждали эту тему, но не помешает повторить
ситуация:
большая организация,
для HR отдела сделали HR приложение и дали им HR профайл,
для РR отдела сделали РR приложение и дали им РR профайл,
все хорошо,
потом, раз, новое приложение, для всех работников организации.
подход с профайлами уже не работает, нужны Permission Set-ы
и конечно самой простой и ясной кажется идея использовать единый Profile только как placeholder и для привязки к лицензии: один профайл для всех, и множество Permission Set, дающих доступ к приложениям
но это уже не подходит: записи в общих объектах как Эккаунт, Контакт, Кейс, имеют рекорд-тайпы и лейауты в зависимости от приложения, а рекорд-тайпы можно привязать только к Профайлу.
придется делать Профайлы для каждого отдела, включать в него доступ к базовым приложением отдела, и доступ к другим приложениям давать через Permission Set.
что думаете?
OK, продолжу тему
как вы уже знаете, SF разработка перешла на SF DX подход и Source-driven approach, со всеми втекающими и вытекающими...
теперь метадата пулится, пушится и деплоиться между оргами в карусельном режиме
и встает вопрос, как давать текущими юзеру доступ ко всей этой метадате
трейлхед дает однозначный пример: Permission Set, которые можно назначать через SFDX CLI
фактически теперь Permission Set - это ключевой метод контроля доступа пользователя к метадате, а профайлы превратились в place holders
в этой связи не удивляет, что в новом релизе много внимания уделено именно Permission Set:
теперь появились Permission Set Группы, и что удивительно, появились "запретительные" Permission Set - Muting Permission Sets, что есть прямое нарушение старой "догмы" - Permission Set может только УВЕЛИЧИТЬ доступ, но никак не может его ОГРАНИЧИТЬ.
В общем вопрос такой: какой функционал еще остался и должен быть настроен через Профайлы?
Еще узнал кое-что.
Оказывается, еще существуют Custom Permissions, которые можно добавлять к Permission Set.
Оказывается, что стандартные/кастомные кнопки на стандартном дитэйл лзйауте можно заменить (в Билдере) на те же самые кнопки, но как Dynamic Actions, которые, в свою очередь, можно рендерить условно, например используя специально созданный для этого случая Custom Permission. И как я понимаю, там еще много чего можно вот также условно рендерить в Билдере.
Как все стало гибко, но при этом невероятно запутанно!
также вижу, что Custom Permission используется в Validation Rules.
Как все стало гибко, и запутанно...