我们开始使用 Asp.net 构建一个新的应用程序。它应该连接到已经可用于检索数据以呈现给用户的 Web 服务。我们创建了一个与 web 服务通信的存储库。
Web 服务需要使用与用户登录 Web 应用程序相同的用户凭据进行授权。用户被授权使用带有 cookie 支持的表单身份验证。
问题是当用户获得授权并自动登录时,我们无法在新请求中从用户那里检索密码。需要此密码才能从存储库类登录到 Web 服务。
关于如何以最好和最安全的方式实施这一点的任何想法?
我们开始使用 Asp.net 构建一个新的应用程序。它应该连接到已经可用于检索数据以呈现给用户的 Web 服务。我们创建了一个与 web 服务通信的存储库。
Web 服务需要使用与用户登录 Web 应用程序相同的用户凭据进行授权。用户被授权使用带有 cookie 支持的表单身份验证。
问题是当用户获得授权并自动登录时,我们无法在新请求中从用户那里检索密码。需要此密码才能从存储库类登录到 Web 服务。
关于如何以最好和最安全的方式实施这一点的任何想法?
您可以尝试使用客户端应用程序服务来获取和设置 cookie。或者,您可以使用本文中的示例代码手动获取和设置 cookie。该示例显示了这两种方法,并且专门用于将表单身份验证 cookie 从 MVC 应用程序传递到 OData WCF 提要:
此外,这是一个类似的例子,在范围内被缩小:
http://www.codeproject.com/Articles/190806/Send-Cookies-When-Making-WCF-Service-Calls