Мы начинаем создавать целую кучу новых сервисов для создания (WCF, ADO.NET Data Services, возможно, в облаке в какой-то момент), и один вопрос, который появляется, - это схема аутентификации и авторизации для использования - есть немало!Какие схемы авторизации и авторизации вы используете - и почему?
Мы в основном должны быть способны идентифицировать пользователей (фактических пользователей и «виртуальных» пользователей приложений/служб) по широкому спектру протоколов - HTTP, HTTPS, TCP - и нам необходимо назначить их как минимум роли/разрешения для просмотра определенных данных и/или выполнения определенных операций.
Мы определенно не можем использовать членство в группе Windows в одиночку - у нас есть много внешних потребителей наших услуг, и мы не хотим настраивать учетную запись домена в нашем внутреннем домене для каждого из них.
Так что в основном три варианта, я думаю:
- Использование системы членства ASP.NET - создать пользователей и назначить там роли
- Использование AzMan (менеджер авторизации), который, как представляется, более зернистая, более зрелый, более сложная система (с пользователями, задачи, группы - три уровня, а не только пользователей + ролей)
- Ролл наши собственные
Прежде всего - какой из этих трех вы бы рекомен исправиться? Почему?
Во-вторых - есть ли еще варианты, которые мне не хватает?
благодарит за любые намеки, указатели, мнения!
Марк
PS: видя ответы до сих пор, я поражен количеством людей, голосовавших за 3 вариант #. Я бы подумал, что MS сможет разработать что-то многоразовое, которое могло бы справиться со всеми этими требованиями ....
Разве мы не в основном в том же месте, что и Active Directory? Нам нужно будет создавать учетные записи пользователей в LDAP для любого пользователя (реального или виртуального) в LDAP, верно? Какова польза, на ваш взгляд, по сравнению с другими вариантами? –
Кроме того, насколько я понимаю (но, пожалуйста, поправьте меня, если я ошибаюсь), LDAP действительно обрабатывает часть аутентификации - КТО ВЫ? Или есть простой способ включить в него авторизацию? (что вы можете сделать как пользователь?) –
Не входит ли членство в ASP.NET для интеграции с AD? Ldap позволяет источнику данных быть в системе Novell или Linux, например, в то время как симуляция AD в этой системе будет тяжелой работой - даже если это возможно со 100% совпадением. – Sascha