我使用HttpHandlers生成PDF报告文件,“动态”使用认证的用户上下文。但是,要创建报表PDF文件,我需要使用调用方(经过身份验证的用户)的上下文在安全的WCF服务上调用一个方法。
我看到了很多Windows身份验证的答案,但我使用的是普通的旧表单身份验证,所以答案不适用。服务端的身份验证使用ASP.NET成员身份(与承载HttpHandler的服务器相同)。
应该有(我希望)有一种方式,我只是把调用者的上下文传递给服务。
恐怕我说得不够清楚。
我拥有的是一个WCF服务和一个HttpHandler。用户通过具有ASP成员资格的WCF服务进行身份验证。
我想要做的是,在HttpHandler中,能够做到
SetContextAsCaller();
myWCFService.MyMethodCall();并使用HttpCaller的上下文调用MyMethodCall(),以传递其ASP、票证/用户名等。
发布于 2009-08-06 15:22:08
您可以--取决于您使用的绑定和传输协议--使用用户名/Passwort身份验证,并指示WCF服务器端使用ASP.NET成员资格提供程序对传入呼叫者进行身份验证。
查看关于WCF安全场景的WCF安全基础和这个博客帖子系列 --它们包含了许多关于如何使用和设置WCF安全性的非常有用的信息。
这有帮助吗,还是你需要更多的信息?如果是这样的话:你需要什么?
Marc
更新:
好的,在您评论之后,这里有几篇文章专门讨论了WCF服务模拟调用者-希望这些帮助:
https://stackoverflow.com/questions/1239550
复制相似问题