我有在 dotnet Framework 4.8 上运行的 wcf 服务。 该服务是从 dotnet 7 应用程序调用的。 现在,我们有一个需要使用基于 SAML 的身份验证的要求。为此,我们使用 https://github.com/ITfoxtec/ITfoxtec.Identity.Saml2 nuget 包。 如果我们使用 ITfoxtec 4.0.8 版本,wcf 服务可以工作,但 saml 身份验证不起作用,因为 ITfoxtec 不支持 4.0.8 版本的 dotnet 7。 如果我升级到支持的 dotnet 版本(4.10.8),那么 okta saml 可以工作,但是 wcf 服务无法工作。 它给出了此错误(具有合同“Service1”的 ServiceEndpoint 上的 CustomBinding 缺少 TransportBindingElement。每个绑定必须至少有一个从 TransportBindingElement 派生的绑定元素)
注意:Web.Core 项目中添加了应用程序项目引用。
我无法将 wcf 服务升级到最新的 dotnet 版本。如何同时支持 okta 和 wcf?
这就是项目结构。
我可以采用的唯一解决方案是将使用 SAML 2.0 的 Web 应用程序和 API/WCF 服务划分为两个单独的应用程序。