Я просмотрел несколько статей в Интернете, но ничего не помогло. Может ли кто-нибудь помочь мне с шагами по аутентификации пользователя с помощью единого входа SAML в моем существующем веб-приложении на C #?
.net не предоставляет собственную библиотеку для аутентификации SAML.Вам необходимо использовать стороннюю библиотеку SAML.Я рекомендую Sustainsys .Проверьте соответствующее руководство в соответствии с вашим типом проекта.
Я использую APS.NET MVC в качестве примера:
1, установить пакет Sustainsys.Saml2.Mvc"
2, настроить web.configфайл, ссылающийся на https://saml2.sustainsys.com/en/2.0/configuration.html
Вот пример для раздела sustainsys.saml2:
sustainsys.saml2
<sustainsys.saml2 entityId="https://www.contoso.org/checkresourceapp[This is your application URI in Azure AD]" returnUrl="http://localhost:54664/[this is the reply url of your app in AAD]" > <nameIdPolicy allowCreate="true" format="Persistent"/> <identityProviders> <add entityId="https://sts.windows.net/<YourADTenantID>/" metadataLocation="https://login.microsoftonline.com/<YourADTenantID>/FederationMetadata/2007-06/FederationMetadata.xml" loadMetadata = "true" allowUnsolicitedAuthnResponse="true" signOnUrl="https://login.microsoftonline.com/<YourADTenantID>" binding="HttpRedirect"> </add> </identityProviders> <federations> <add metadataLocation="https://login.microsoftonline.com/<YourADTenantID>/FederationMetadata/2007-06/FederationMetadata.xml" allowUnsolicitedAuthnResponse = "false" /> </federations> </sustainsys.saml2>
3, добавьте атрибут «Авторизовать» на страницу, для которой вы хотите включить аутентификацию