Доверенная подсистема на одном уровне - PullRequest
1 голос
/ 07 декабря 2008

Представьте себе приложение .NET, разработанное с использованием многоуровневой архитектуры.

Можно ли использовать что-то похожее на шаблон доверенная подсистема при развертывании всех слоев приложения на одном компьютере?

Этот дизайн по умолчанию небезопасен?

Ответы [ 2 ]

1 голос
/ 07 декабря 2008

Это зависит от того, как вы используете систему и как развернуты ваши слои.

Допустим, у вас есть компьютер, на котором SQL Server работает под одной учетной записью пользователя, ваш уровень обслуживания находится под другой учетной записью службы, а пользователи входят в систему с использованием третьей учетной записи (конечно, без доступа администратора). Допустим, учетная запись среднего уровня является доверенной для доступа к базе данных, но нет учетной записи пользователя. В этом случае, да, это в основном ваша классическая картина модели доверенной подсистемы.

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

0 голосов
/ 07 декабря 2008

Если все уровни развернуты в одном и том же процессе, я бы сказал, что почти по определению вы не используете модель доверенной подсистемы.

Вы можете (по крайней мере, теоретически) развернуть разные уровни на одном физическом компьютере, все еще используя модель доверенной подсистемы, но, конечно, будет труднее гарантировать безопасность среднего уровня. Например, ваш средний уровень может быть доверенным веб-сервисом, работающим под управлением IIS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...