Требуется ваша «блокировка» на уровне базы данных (или в данном случае - на Salesforce), а не на уровне PHP SDK. Потому что в противном случае злоумышленник просто возьмется за загрузчик данных или коннектор Excel и продолжит свое обновление в обход вашей блокировки;)
Попробуйте правила проверки Salesforce или (если ваша логика сложна) триггер "до обновления".
Пример правила проверки может выглядеть следующим образом:
состояние:
AND(
ISPICKVAL(PRIORVALUE(Type),"Technology Partner"),
ISCHANGED(Type),
$Profile.Name <> "System Administrator"
)
Отображаемое сообщение об ошибке:
After Type has been set to "Technology partner" only Administrators can modify this field.
Это только отправная точка, не стесняйтесь экспериментировать и настраивать. Вы также можете отключить это правило после миграции.
Посетите страницу справки по функциям Правил валидации или введение в Правила валидации для получения дополнительной информации. Функция ISCHANGED () должна быть особенно полезна для вас.