Я не знаю, что отслеживание заражения между уровнями приложения является лучшим приложением шаблона Context Object.Насколько я понимаю, Контекстный объект - это объект, который находится в пределах одного уровня и предоставляет услуги нескольким сообщениям, проходящим через этот уровень.
Где я мог видеть, что это использование в качестве механизма безопасности находится в процессе созданияявного уровня безопасности в вашем приложении.Представьте, что, когда каждый пользователь проходит аутентификацию в вашей системе, для этого пользователя на уровне безопасности создается объект контекста безопасности.Объект контекста безопасности содержит список всех разрешений этого пользователя.Каждый запрос, поступающий в систему от любого пользователя, должен сначала пройти уровень безопасности и быть оцененным по объекту контекста безопасности пользователя.
Если запрос разрешен, уровень безопасности передает его в стек на более высокие уровни для обработки.Если запрос отклонен, уровень безопасности возвращает ошибку пользователю, а остальная часть приложения не является разумной.Централизация проблем безопасности на уровне безопасности предотвращает рассредоточение проверок безопасности по бизнес-уровням и уровням обслуживания.
В этом случае объект контекста безопасности реализует шаблон объекта контекста.Объект контекста является долгоживущим, предоставляя контекст для нескольких пользовательских запросов, но не виден верхним или нижним уровням в стеке запросов.