2010-08-06 65 views
3

我在调用wcf服务的内部Windows域中有一个asp.net web应用程序。在wcf服务中,我使用SecurityContext.Identity.Name,所以它需要模拟。 我们的任务是可以从任何地方访问Web应用程序。 第一步是管理员通过ISA服务器2006发布了Web应用程序。此解决方案的主要问题是浏览器不会将用户的登录名和密码保存在ISA身份验证表单中。此外,用户还希望通过Opera Mini从诺基亚手机访问Web应用程序。如何从互联网访问内部的asp.net Web应用程序?

我能在浏览器以用户可以使用的应用程序,而不在每30/60分钟重新输入登录数据保存的登录名/密码,一个简单的方法做????? 任何最佳实践?

回答

0

的标准是存储用户名/密码在cookie中,并有登陆页面拉从cookie来自动登录的登录信息。如果你愿意,你可以让这个cookie在一个月内过期。

下面是使用不同的语言中增加了“记住我”类型的功能,以节省用户名和密码在cookie中的一些例子。

Cookies

php example

asp.net example

asp example


应对创作者的评论:

为了修改ISA登录页面,请看this文章。您应该可以通过编辑目录C:\ Program Files \ Microsoft ISA Server \ CookieAuthTemplates \ ISA \ HTML(假设您已将ISA安装到该位置)中的登录页面文件来添加代码顶级句柄cookie。

我不认为有一个开箱即用的配置可以让你设置,但是我确实看到了一些配置来设置你可能想要玩的信任级别(文章中的#18)。

+0

谢谢。但。正如我在上面写的那样,浏览器不会将登录数据保存在cookie中,因为标准的ISA身份验证表单不支持引用安全方面的内容。我发现这个:http://technet.microsoft.com/en-us/library/bb794733.aspx。所以可以自定义ISA的登录表单,但不建议更改任何INPUT或FORM标签。我认为在这种身份验证表单中,AUTOCOMPLETE属性设置为OFF,浏览器无法保存登录数据。允许在DMZ中创建一个新的简单Web应用程序,但是如何通过ISA传递登录数据? – user413099 2010-08-06 20:47:41

+0

好吧,我认为当你说浏览器没有保存登录信息时,你的意思是自动完成功能无法工作。你能发布更多关于你的ISA配置的详细信息吗?我之前通过ISA公开了网站,他们对标准登录cookie没有任何问题。 – kniemczak 2010-08-06 21:34:54

+0

使用基本身份验证配置的内部Web应用程序。 ISA配置使用基于HTTP表单的身份验证。当这是一个私人计算机选项被选中时,浏览器仅保存用户的控制名称。密码永远不会被任何类型的浏览器保存。为什么?我如何配置以实现密码保存。 – user413099 2010-08-09 08:55:54

0

我看你明白我的意思。 同时,我注册这个网站,我发现这篇文章:http://technet.microsoft.com/en-us/library/bb794733.aspx 我们将尝试切换自动完成属性,但您的CodeProject上的链接是也有帮助。谢谢。

+0

这是解决方案。我们为Web侦听器设置了一个新的ISA身份验证表单,并将自动完成属性切换为ON。有用! – user418491 2010-09-01 09:31:06

相关问题