Приложения MVC2 (и другие), совместно использующие службы WCF и аутентификацию - PullRequest
6 голосов
/ 16 февраля 2010

Я видел несколько похожих сценариев, объясненных здесь, но не мой конкретный. Интересно, кто-нибудь может сказать мне, в каком направлении идти?

Я занимаюсь разработкой двух (и более поздних) приложений MVC2. Позже будет еще один (более толстый) клиент (WPF или Silverlight, TBD). Все они должны использовать одну и ту же аутентификацию. Для приложений MVC2 они (предпочтительно) должны быть единым входом в систему, то есть если пользователь входит в одно приложение MVC2, они должны быть авторизованы в другом, если время ожидания файла cookie не истекло.

Должна использоваться аутентификация по формам.

Все приложения должны использовать обычные бизнес-функции и осуществлять доступ к БД через общее приложение-службу WCF. Было бы неплохо (я думаю), если WCF не является общедоступным (т.е. заблокирован за FW). Более толстый клиент может использовать дополнительный уровень обслуживания для доступа к общему приложению WCF.

Как это должно выглядеть:

MVCApp1 -> WCFAppCommon

MVCApp2 -> WCFAppCommon

ThickClient -> WCFApp2 -> WCFAppCommon

Можно ли выполнить все аутентификации / авторизации в WCFAppCommon? В противном случае я думаю, что мне придется повторить всю логику безопасности в MVCApps и WCFApp2, тогда как мне кажется, что она естественным образом находится в WCFAppCommon. С другой стороны, кажется, что если я аутентифицируюсь / авторизируюсь в WCFAppCommon, я не смог бы использовать аутентификацию по формам.

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

Любая помощь приветствуется,

Phil

Ответы [ 2 ]

4 голосов
/ 12 мая 2010

Я подумал, что должен вернуться к этому с тем, что я выучил (и переучил).

Сначала переученный урок - не зацикливайтесь на архитектуре, а затем попытайтесь сделатьвсе остальное подходит.Я исправлен на .Net, SQL Server, WCF, MVC2, EF4 и IIS7.Помнить, как я хочу, чтобы они соединились, немного глупо!Лучше выйти и посмотреть, какое руководство существует.

Что подводит меня к тому, что я узнал - вот ссылка:

http://wcfsecurityguide.codeplex.com/

Я несколько раз пропускал эту статью, потому что она немного устарела.Тем не менее, я бы сказал, что это на самом деле очень актуально, и если вы начинаете проект, связанный с безопасностью сервисов, то посмотрите.В части IV было все, что мне было нужно.

1 голос
/ 23 февраля 2010

Мы используем систему отчетов хостинга веб-приложений WCF (мы обращаемся к ней из Silverlight) и, поскольку она использует те же машинные ключи, что и наше приложение MVC, мы также можем делиться аутентификацией с помощью cookie.

В противном случае вы должны отправить запрос аутентификации (пользовательский или нет) в ваше приложение WCF.

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