gpt4 book ai didi

wcf - ASP.NET、SilverLight、WCF 和表单例份验证 - 如何配置端点?

转载 作者:行者123 更新时间:2023-12-02 04:17:54 24 4
gpt4 key购买 nike

我有这个现有的环境:

1) ASP.NET 3.5 web application

2) forms authentication with the SqlMembershipProvider



我需要添加以下内容:

1) a Silverlight charting object embedded in a web page.

2) a WCF service to be consumed by:

 a) the Silverlight component embedded in an authenticated 
web page, as mentioned above

b) server-based WCF clients with certificate based authentication


我的问题是 - 配置 Silverlight 对象的 WCF 端点以使用已登录用户的安全上下文(通过托管 Silverlight 对象的页面)对 WCF 服务进行身份验证的最简单/最佳方法是什么?再次使用用户的用户名/密码?

我研究了很多 MSDN 和 Patterns & Practices Material ,并且我认为我对许多潜在的身份验证场景有了很好的掌握。但我似乎无法找到一种方法将它们联系在一起,以实现我所概述的场景。我发现其他人向我发布了类似的问题,但我读过的答案似乎也没有完全回答他们的问题。 (也许我让这变得比它需要的更难?)

我认为解决方案是以某种方式使用在 asp.net 表单登录中生成的身份验证 token /cookie,并以某种方式将其传递给 Silverlight 对象,然后将其包含在 WCF 请求中。但我看不到如何配置 WCF 端点以使用该 token 。

(在我的其他一些项目中,我使用基于证书的身份验证在上面的 2.b 中实现了服务器到服务器的场景,所以我不太担心将其添加到我概述的当前组合中。)

在此先感谢您对前进道路的任何见解或指示。

特里

最佳答案

感谢 codemeit 试图提供帮助,但我终于弄清楚我做错了什么——这是飞行员的错误。

在尝试为我的 Silverlight 应用程序配置端点时,我正在使用 asp.net 页面进行测试。我终于意识到,当我以这种方式进行测试时,客户端端点不再源自经过身份验证的浏览器 - 客户端端点是 IIS 服务器,它反过来对 WCF 服务器端点执行请求。因此,安全上下文发生了变化,并且 HttpContext.Current.User.Identity 在 WCF 服务器端点处始终为空。

一旦我在浏览器中运行了我的测试 SL 应用程序,它就会自动继承经过身份验证的浏览器的安全上下文,然后 HttpContext.Current.User.Identity 是正确的,并在 WCF 服务器端点进行了身份验证。

关于wcf - ASP.NET、SilverLight、WCF 和表单例份验证 - 如何配置端点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1772255/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com