#c# #asp.net #winforms #authentication #single-sign-on
Вопрос:
Мне поручено внедрить единый вход для наших клиентов в рамках нашего следующего выпуска, идея заключается в следующем:
- Когда наш клиент получит доступ к веб-сайту, ему не нужно будет проходить дополнительный этап входа в систему, потому что он уже вошел в свой компьютер со своей учетной записью AD, и только учетные записи в AD смогут получить доступ к веб-сайту.
Я пытался исследовать и учиться, но, похоже, нет конкретного руководства. Я использую веб — формы и рекламу в Windows server 2019.
Пожалуйста, предложите мне шаги или рекомендации. Большое спасибо.
Комментарии:
1. Тебе не нужно ничего делать. Windows не требует единого входа, это единый вход. Все приложения запускаются под учетной записью пользователя, который их запустил. Они подключаются к другим машинам, общим файлам, базам данных, веб-сайтам, используя эту учетную запись. Для вызова веб-сайтов и служб сам сайт должен был бы разрешить проверку подлинности Windows. На клиенте вам, возможно , придется задать
Credentials
свойство экземпляра HttpClient, WebRequest или WebClient, которое вы используетеnew NetworkCredentials()
, без параметров. Это позволит выбрать текущую учетную запись пользователя. Это ГОРАЗДО безопаснее, чем форма входа в систему2.
When our customer has access to the website,
вы сказали, что у вас есть приложение Windows Forms, а не веб-приложение. Какое отношение веб-сайты имеют к настольным приложениям? И почему приложение, которое уже запущено под учетной записью домена, должно входить в систему с дополнительным шагом? В чем на самом деле проблема?3. @PanagiotisKanavos извините, я, кажется, немного запутался, это веб-форма
4. Веб-формы также поддерживают проверку подлинности Windows. Способ настройки этого описан в документах с 2002 года, поскольку это наиболее распространенный метод аутентификации для корпоративных сетей. Вам не нужно много делать — установите правильные записи
web.config
и соответствующим образом настройте IIS5. Фактически, в более поздних версиях Visual Studio вы можете указать метод проверки подлинности в диалоговом окне создания проекта