6

我有一个使用Thinktecture Identity Server的声明感知 MVC 网站设置。我现在需要允许第 3 方访问网站的某些部分。

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

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

复杂性源于第 3 方使用基于桌面的 Java 应用程序,该应用程序内置了一些浏览器组件来访问 MVC 网站。用户已通过桌面应用程序进行身份验证,因此我们不希望他们再次输入凭据来查看这些网页。

4

1 回答 1

1

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

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

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

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

希望这可以帮助?很乐意在我能提供的地方提供帮助:-)

于 2014-03-27T20:13:16.607 回答