Интеграция LDAP (AD) для приложения WPF - PullRequest
1 голос
/ 26 августа 2009

Я демонстрировал свое приложение WPF клиенту, и он спросил меня, есть ли у меня LDAP или я могу интегрироваться с Active Directory (AD).

Мое приложение имеет собственную встроенную защиту пользователей и защиту доступа к данным. Я использую свою систему безопасности для аутентификации и предоставления прав на экран и доступ к данным. Клиент спросил меня, могу ли я добавить или интегрировать с активным каталогом. Ему нужно, чтобы пользователь просто запомнил свой пароль Windows, а не мое приложение.

Я мог бы реализовать логику Active Directory, но затем мне пришлось бы изменить свое приложение, чтобы связать пользователя Active Directory с пользователями моего приложения, чтобы при входе пользователя AD он проходил проверку подлинности и ассоциировался как мой локальный пользователь, поскольку локальному пользователю быть связан с его безопасностью и настройками доступа к данным. Это путь?

Я буду использовать классы .NET 3.5 для этого и т. Д. Это будет означать, что администратор моего приложения должен перейти на экран пользователя и также связать локального пользователя с пользователем LDAP .?

1 Ответ

8 голосов
/ 26 августа 2009

Нет, я не думаю, что то, что вы предлагаете, звучит как то, что нужно делать.

Скорее, вы должны основывать безопасность на подключаемой архитектуре (например, IPrincipal), а затем каким-то образом настроить ваше приложение на использование вашей собственной инфраструктуры безопасности или просто WindowsPrincipal (что происходит от IPrincipal) :

Например, у вас может быть параметр конфигурации, который указывает, какого поставщика безопасности использовать. Если он настроен на использование вашей собственной системы, он запросит учетные данные у пользователя и заполнит Thread.CurrentPrincipal экземпляром, основанным на вашей системе.

Если сконфигурировано для использования AD, он просто тихо собирается установить Thread.CurrentPrincipal в WindowsIdentity.GetCurrent()WindowsPrincipal).

Посмотрите, как ASP.NET или WCF работают с безопасностью - это в основном то, что они делают.

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