Управление сеансами с аутентификацией Windows

Я использовал CSLA для одного проекта, и это работало отлично, и сделайте вещи намного более простыми и более опрятными.

Вместо того, чтобы иметь Вашу команду, пишущую бизнес-объекты в их собственном различном персональном стиле, мы знаем, имеют единый стандарт для работы против.

//andy

6
задан AviD 17 November 2009 в 00:40
поделиться

1 ответ

Отличный вопрос. Я просто провел тест, чтобы подтвердить, прежде чем написать этот ответ.

Если я «Человек А», а вы «Человек Б», то должно произойти следующее:

  • Человек А входит на сайт с использованием IWA, ему назначается идентификатор сеанса (например, в URL-адресе)
  • Человек B также входит на веб-сайт как он сам (поэтому они должны быть аутентифицированы)
  • Человек A отправляет человеку B URL-ссылку, содержащую идентификатор сеанса
  • Человек B нажимает на эту ссылку, он попадает прямо на веб-сайт, используя детали сеанса человека A

Обратите внимание, что человек B по-прежнему распознается веб-сайтом как «Человек B», даже если они используют детали сеанса человека А. Поэтому, если у вас есть код, который проверяет права пользователей и т. Д., То эти проверки все равно выполняются в контексте человека Б.

Это может показаться серьезной проблемой, но на самом деле это не так, если программисты не беспечны. Например, единственный эффект, который получил человек B в моем тесте выше, заключался в том, что они унаследовали макеты экрана и сетки, которые настроил человек A, потому что мы выполняем наши проверки разрешений в реальном времени (т.е. они не кэшируются). Если вы храните конфиденциальные данные в сеансе, это может быть проблемой, но это проблема только в том случае, если поля, показывающие это, не проверяются разрешениями каждый раз, когда они отображаются. Это также проблема, только если сеанс для человека A не истек.

потому что мы проводим наши проверки разрешений в реальном времени (т.е. они не кэшируются). Если вы храните конфиденциальные данные в сеансе, это может быть проблемой, но это проблема только в том случае, если поля, показывающие это, не проверяются разрешениями каждый раз, когда они отображаются. Это также проблема, только если сеанс для человека A не истек.

потому что мы проводим наши проверки разрешений в реальном времени (т.е. они не кэшируются). Если вы храните конфиденциальные данные в сеансе, это может быть проблемой, но это проблема только в том случае, если поля, показывающие это, не проверяются разрешениями каждый раз, когда они отображаются. Это также проблема, только если сеанс для человека А не истек.

4
ответ дан 17 December 2019 в 07:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: