1

我正在为托管在云中的 Silverlight 应用程序实施 ADFS。我正在使用 IdentityTrainingKit 中提供的身份模型来读取使用被动身份验证的声明。我成功地从我的 silverlight 中的 STS 服务器获得了所有声明。现在,我想将该 ClaimCollection 从 silverlight 应用程序发送到 WCF 服务。

您能否通过提供一些示例代码、文章等来帮助我如何做到这一点?

谢谢

4

1 回答 1

0

我假设 WCF 服务是您的应用程序的一部分。在这种情况下,无需将声明从客户端发送到 WCF 服务。当用户访问您的基于 Silverlight 的应用程序时,首先基于 WIF 的 Web 应用程序(即托管 Silverlight 组件的服务器端)从 AD FS 接收声明,然后 WIF 通过返回IClaimsIdentityIClaimsPrincipal使它们可用请求当前的IIdentityIPrincipal;例如,参见WIF 的“与 IIdentity 和 IPrincipal 的集成”IClaimsIdentity.Claims然后为您提供 ClaimCollection。

如果 WCF 服务是一个单独的服务,那么很难从 Silverlight 客户端调用它:.NET 框架的 Silverlight 版本不包含足够的内容来支持调用基于声明的 Web 服务。(这显然是可能的,但非常复杂;如果需要,我可以查看详细信息。)但是为什么不从应用程序的服务器端调用该 WCF 服务呢?那是标准模式。(同样,我不知道细节,但可以查一下。)

于 2011-09-07T18:07:28.447 回答