首页 新闻 会员 周边

asp.net关于非域用户访问IIS时自动登录的问题

0
悬赏园豆:100 [已解决问题] 解决于 2011-07-21 16:19

IIS在设置不允许匿名访问和Windows认证的时候

客户端访问IIS的时候要求输入合法的域用户名和密码,才允许访问

如果客户端可服务器在同一个域里面,那可以通过

[DllImport("advapi32.dll")]        

//映射函數LogonUser        

private static extern bool LogonUser(string lpszUsername, string lpszDomain, string lpszPassword, int dwLogonType, int dwLogonProvider, ref IntPtr phToken);

来登录IIS域,可以通过User.Identity.Name.ToString();来获取客户端的域用户信息实现自动登录

这样客户端在访问IIS的时候就不会弹出

这样的登录窗口!!!!

在这个基础上,小弟现在要做的一个项目要求是

客户端不再服务器的域里面,但是客户也不知道正确的域用户名和密码

我们要在程序里面实现自动登录域服务器的功能(我们知道域用户名和密码,内置在程序里)

现在的难点在于,因为客户端和服务器不是在同一个域里面,不能用LogonUser()来验证域用户

而我们有必须让程序自动登录到服务器的域里面

这个功能要怎么实现了?很多人说这样没法实现,小弟觉得还是有办法可以实现的

只是没有什么思路~哪位兄弟如果对这样方面有研究的,请指点指点小弟!!!

另外好像C#的winform可以用控件WebBrowser 来实现这个功能。。。。。

紫炎的主页 紫炎 | 初学一级 | 园豆:106
提问于:2011-06-29 17:07
< >
分享
最佳答案
0

这个除非自己写认证处理模块,就是不用IIS的东西。比较麻烦。

收获园豆:100
刘鸿海 | 小虾三级 |园豆:655 | 2011-07-21 10:59
研究了大半个月没什么进展,放弃了~
你是唯一一个回复的人~~呵呵~谢谢~
紫炎 | 园豆:106 (初学一级) | 2011-07-21 16:18
客气,客气,
那最后采取什么方案了,不使用windows认证了?
刘鸿海 | 园豆:655 (小虾三级) | 2011-07-21 21:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册