【发布时间】:2019-12-30 17:17:47
【问题描述】:
我正在努力设置 Sustainsys.Saml2 与 Gluu 服务器。我正在使用 Sustainsys.Saml2 2.2.0、Sustainsys.Saml2.Mvc 2.2.0 和 Gluu 3.1.6。我正在使用的应用程序是针对 .NET 4.6.2 编译的 MVC 应用程序。这是发生的网络流量:
获取https://localhost:44300/Saml2/SignIn
获取https://lb/idp/profile/SAML2/Redirect/SSO
查询字符串:
SAMLRequest = fZHBasMwDIbvhb6D8b2zlyVtItJCWC + FjkGz7rCbY6vUkNiZ5Yw9 / tJsg / awXX / PE5 + kklTXJj1UQzy7A74PSJF9dq0j + K6s + RAceEWWwKkOCaKGunraQ3InoQ8 + eu1bfs38jygiDNF6x9luu + bWFMVS5U2Kic6aVOpTvlK5MphnS6OylTGcvWKgEVjzkR8pogF3jqJycYzkfbGQ + SJJXmQOqYRMvnG2HdewTsWJOsfYEwjRNsKaXozOJ9uiuBgl4oDGBtRR1PUzZ9Wv3KN3NHQYagwfVuPxsL + a47Vqz54ipOmDlKK + LC0qTXwznzFWTkeASTNs / oBKcdM1n / 0Et5 / YfAE =点击 RelayState = XyC...IDP登录处理等
发布https://localhost:44300/Saml2/Acs
身体:
RelayState = XyC...
SAMLResponse = PD94...
这是完整网络流量的截图: https://i.stack.imgur.com/NvS20.png
登录过程结束的结果如下异常:
Sustainsys.Saml2.Exceptions.NoSamlResponseFoundException:在 http 请求中找不到 Saml2 响应
奇怪的是,如果我刷新我的应用程序,异常就会消失并且我正确登录。
我的 Sustainsys.Saml2 配置如下:
<sustainsys.saml2 entityId="https://localhost:44300" returnUrl="https://localhost:44300/Saml2/Acs" minIncomingSigningAlgorithm="SHA1">
<identityProviders>
<add entityId="https://lb/idp/shibboleth" signOnUrl="https://lb/idp/profile/SAML2/Redirect/SSO" logoutUrl="https://lb/idp/Authn/oxAuth/logout" allowUnsolicitedAuthnResponse="true" binding="HttpRedirect">
<signingCertificate storeName="TrustedPeople" storeLocation="LocalMachine" findValue="..." x509FindType="FindByThumbprint" />
</add>
</identityProviders>
<serviceCertificates>
<add storeName="My" storeLocation="LocalMachine" findValue="..." x509FindType="FindByThumbprint" />
</serviceCertificates>
</sustainsys.saml2>
更多观察:
- 当使用 WSO2 或 RedHat SSO 作为 IDP 时,我正在使用的带有 Sustainsys.Saml2 的当前应用程序可以正常工作。只是不使用 Gluu 服务器。
- 将 https://github.com/mcguinness/saml-sp 上的应用程序与 Gluu 服务器一起使用时,连接正常工作。
非常感谢任何帮助!
【问题讨论】:
-
您能否检查第一个 POST 到 /Saml2/Acs 的正文内容。 SAMLRequest 是否正确包含在其中?
-
第一个 POST 到 /Saml2/Acs 的正文包含 RelayState 和 SAMLResponse。您还可以在我发布的第一个引用块中看到这一点,其中提到的 POST 是第一个。
-
我可以提供更多信息以使问题更清晰吗?
标签: .net saml-2.0 sustainsys-saml2 gluu