2009-06-29 58 views
2

我想通过桌面应用程序将文件上载到网站,然后将用户带到网站。该网站有一个网络服务,但需要认证,就像网站一样。有没有办法做到这一点,而不强迫用户进行两次验证(一次在桌面应用程序中,一次在Web浏览器中)? 不幸的是,由于安全原因,您无法预先填写类型文件的输入,这很有意义,因为用户不希望您从他/她的计算机上传任意文件。但是,如果他们有桌面应用程序,有没有办法解决这个问题? 或者,也许可以让用户先登录到Web应用程序,然后验证Cookie可以重复使用? 有没有其他想法?在Web应用程序和桌面应用程序之间集成身份验证

感谢, 本

+0

该webservice没有实现某种登录方法吗? – James 2009-06-29 12:51:02

回答

3

我会使用dekstop应用程序作为客户端通过API的网站应用程序。

因此,通过桌面应用程序登录。 api返回一个身份验证令牌(如Carlos建议的),这可能是一段时间内存储在数据库中的md5哈希,可能与客户端的ip地址匹配。

然后,桌面应用程序可以在api(如上传文件)上通过身份验证用户(通过使用身份验证令牌)进行调用。

加载网站时,可能的网址是http://website/login/ {auth_token},其中auth令牌添加到网址。 api可以检查它是否有效的认证令牌并考虑用户登录。

1

您可以生成可稍后在网站上使用的认证令牌。

0

这一切都取决于服务和网站的身份验证类型。它集成了Kerberos,WS-Auth,它是基本/摘要HTTP,它是形式/ cookie?

0

这个答案很可能不适用于非常普通的用户在广泛的开放式web场景,但在intranet上下文使用Windows身份验证(在ASP .Net解决方案中)将提供此功能。

相关问题