Как реализовать единый вход для веб — форм в интранет — приложении с помощью AD

#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 и соответствующим образом настройте IIS

5. Фактически, в более поздних версиях Visual Studio вы можете указать метод проверки подлинности в диалоговом окне создания проекта