Для безопасности модели (или данных) Модель будет «контролировать» доступ, а контроллер будет «облегчать» доступ. Это предусматривает повторное использование модели независимо от контроллера и сводит к минимуму, если не отменяет общую репликацию кода, необходимую для разнородных контроллеров, использующих модель.
Например, Автомобиль, Водитель и Ключ. (Модель, Контроллер, API соответственно). Благодаря очень маленькому интерфейсу (ключ == API) Модель разрешает или запрещает доступ контроллера к API (брелок). Разрешены различные типы доступа (ключ камердинера, ключ владельца, владелец FOB). Используя ключевой интерфейс камердинера, контроллер не будет иметь доступа к некоторым данным / функциям модели, таким как перчаточный ящик, багажник и бензобак. По сути, это доступ на основе ролей, реализуемый Моделью посредством идентификации и категоризации Контроллера с очень маленькой областью API / поверхности команд.
Это означает, что Модель может использоваться другими контроллерами (автомобиль с другими водителями), которым требуется только базовая аутентификация для доступа к данным модели (функции и отделения автомобиля).