将SAML令牌发布到ASP.NET MVC网站

Kev*_*evB 6 c# asp.net-mvc wcf saml thinktecture-ident-server

我声称使用Thinktecture Identity Server设置MVC网站.我现在要求允许第三方访问网站的某些部分.

是否可以通过编程方式向Identity Server进行身份验证并将其发布到网站,以便第三方的用户不需要手动完成正常的登录过程?

我之前使用身份服务器获取SAML令牌以进行WCF调用,我想知道是否可以重用这种方法?

由于第三方使用基于桌面的Java应用程序并且内置了一些浏览器组件来访问MVC网站,因此出现了复杂情况.用户已经使用桌面应用进行了身份验证,因此我们不希望他们再次输入凭据来查看这些网页.

小智 1

嗯,这是一个很难以安全方式解决的问题。基本上我不信任桌面应用程序;-)

您可能正在寻找某种联盟。基本上,它是让您的身份服务器信任第 3 方(通过签名)。然后,您的身份服务器将使用来自第 3 方的 SAML 令牌作为登录信息,并生成新的 SAML 令牌(由您签名)以转发到 MVC Web 应用程序。我认为多米尼克有一两个关于它的视频,但不确定它是否满足您的要求。看看https://github.com/thinktecture/Thinktecture.IdentityServer.v2/wiki

Java 桌面应用程序可能无法创建签名的 SAML 令牌,因此您可以考虑使用“其他东西”。最好是从他们第一次登录的地方签名的东西。

您应该避免让您的 Web 应用程序信任除您自己的身份服务器/身份提供商之外的任何人。

希望这可以帮助?很乐意尽我所能提供帮助:-)