使用Sustainsys.Saml2库使用SAML SSO在站点(https)之间移动

时间:2019-02-28 11:17:15

标签: asp.net saml-2.0 sustainsys-saml2

我正在使用“ Sustainsys.SAML”库通过SAML2实现单点登录。我有2个使用https在同一台机器上运行的.NET Web应用程序。这两个应用程序是基于标准ASP.NET的应用程序。 问题是有关其他应用程序的第一次请求后重新输入凭据。以下是步骤。

  • 第一个Web应用程序第一次请求任何页面,然后IDP通过输入LOGIN凭据来进行身份验证。身份验证完成后,页面会根据配置文件中的设置重定向到相应的页面。

  • 现在浏览第二个应用程序,然后再次将其重定向到IDP,并要求重新输入凭据。此行为与SSO不同。理想情况下,IDP应该返回身份验证SAML令牌,而无需第二次再次询问凭据。请指教。

有关信息,目前我正在开发环境https://stubidp.sustainsys.com/Metadata中使用模拟IDP。

以下是我使用的两个Web应用程序的配置设置:

Web应用程序1中的

Web.config设置

<sustainsys.saml2 entityId="https://localhost:44303/<appname1>/Saml2" returnUrl="https://localhost:44303//<appname1>/default.aspx" authenticateRequestSigningBehavior="Always">
    <nameIdPolicy allowCreate="true" format="Persistent" />
    <requestedAuthnContext classRef="Password" comparison="Minimum" />
    <identityProviders>
      <add entityId="https://stubidp.sustainsys.com/Metadata" signOnUrl="https://stubidp.sustainsys.com/" allowUnsolicitedAuthnResponse="true" binding="HttpRedirect">
        <signingCertificate fileName="~/App_Data/stubidp.sustainsys.com.cer" />
      </add>
    </identityProviders>
    <serviceCertificates>
      <add fileName="~/App_Data/Sustainsys.Saml2.Tests.pfx" />
    </serviceCertificates>
  </sustainsys.saml2>

Web应用程序2中的

Web.config设置

<sustainsys.saml2 entityId="https://localhost:44305/<appname2>/Saml2" returnUrl="https://localhost:44305/<appname2>/default.aspx" authenticateRequestSigningBehavior="Always">
    <nameIdPolicy allowCreate="true" format="Persistent" />
    <requestedAuthnContext classRef="Password" comparison="Minimum" />
    <identityProviders>
      <add entityId="https://stubidp.sustainsys.com/Metadata" signOnUrl="https://stubidp.sustainsys.com/" allowUnsolicitedAuthnResponse="true" binding="HttpRedirect">
        <signingCertificate fileName="~/App_Data/stubidp.sustainsys.com.cer" />
      </add>
    </identityProviders>
    <serviceCertificates>
      <add fileName="~/App_Data/Sustainsys.Saml2.Tests.pfx" />
    </serviceCertificates>
  </sustainsys.saml2>

请对此进行帮助,以避免通过第二次申请请求身份验证重新输入凭据。

谢谢。

0 个答案:

没有答案