Мой сценарий - это трехуровневое приложение, где уровень данных - это база данных SQL Server, средний уровень - приложение WCF, размещенное в службе Windows, и, наконец, презентация - приложение Asp.Net MVC.
Как обычно, средний уровень - это тот, который выполняет всю бизнес-логику. Доступ к базе данных, определение бизнес-правил и т. Д.
Хорошо, пока все хорошо! НО теперь вот вопрос: как вы справляетесь с безопасностью в таком сценарии? Я имею в виду, что пользователь должен войти в приложение ASP.NET, но я хочу аутентифицировать его не только в ASP, но и на среднем уровне WCF, поскольку предполагается, что к службе WCF должен обращаться больше приложений.
Я хочу, чтобы пользователь вошел в приложение Asp.Net и позволил WCF также узнать учетные данные. Есть ли какая-то сессия в WCF, в которой можно указать зарегистрированного пользователя?
Как профессионалы справляются с безопасностью в этом случае? Я знаю, что вы можете защитить службы WCF с помощью защиты сообщений, но как Asp.Net и WCF синхронизируются с одним зарегистрированным пользователем? Я хочу защитить операции WCF в зависимости от пользователя для средств авторизации.