我有一个java应用程序,在java应用程序嵌入式浏览器中运行.net应用程序。
我希望java应用程序使用用户名和密码调用.net WCF或Web服务。
wcf会将用户设置为表单身份验证中的授权。
在java桌面应用程序中,我将加载一个通过表单身份验证保护的.aspx页面。
我怎样才能做到这一点?它甚至可能......?
答案 0 :(得分:1)
您需要在WCF服务上启用ASP.NET兼容模式才能启用表单身份验证。
Java客户端应用程序可以通过安全连接发送用户名和密码,您的WCF服务通过FormsAuthentication.Authenticate(username, password)
或FormsAuthentication.SetAuthCookie
对用户进行身份验证。
然后,您需要在Java客户端使用cookie存储,以便在每个连续请求上传递身份验证cookie(并在刷新时更新它),但这应该是HTTP客户端的内置功能。
.aspx页面必须在与WCF服务具有相同机器密钥的服务器上运行。
结论:是的,这是可能的,但对我而言,您所指的“.NET应用程序”并不清楚?
编辑:我认为现在很清楚,您需要能够设置浏览器cookie。如果您无法直接从Java应用程序执行此操作,则解决方法是让WCF服务通知用户已通过身份验证,然后在.aspx站点请求上设置cookie。