日期:2014-05-18  浏览次数:20429 次

集成 Windows 身份验证问题(在线等!顶有分!)
问题1:User.Identity.Name   取到的是域名加用户名吗,如果不是请问域名怎么取?
2:把项目Web共享,去取消匿名访问并设置Windows集成身份认证,在Web.config里面配置了   <authentication   mode= "Windows "/> 可是我把项目发布后仍然弹出匿名访问要求输入用户名和密码的窗口。

      其实我要实现的功能是:在用户打开登录页面的时得到域名和用户名,在AD里面查看,如果有这个用户的话就跳过登录页面进入系统,否则的话让他登录页面登录后在进入系统!

        请问高手门怎么解决!!

------解决方案--------------------
不懂 帮顶
------解决方案--------------------
我认为取到的域名是加用户名的。不确定。

------解决方案--------------------
up
------解决方案--------------------
Web.config的配置好像不全呀
------解决方案--------------------
配置不全导致windows集成身份认证失效,走的是混合验证。
------解决方案--------------------
http://blog.csdn.net/xiaops2005/archive/2007/05/28/1628453.aspx
------解决方案--------------------
没有登陆就得到了用户名,是谁的用户名呀?
------解决方案--------------------
up
------解决方案--------------------
我记得采单里面好像有一个ASP.NET配置你用一下那个看看吧
------解决方案--------------------
User.Identity.Name得到的是

if(用户名密码正确)
FormsAuthentication.RedirectFromLoginPage(用户名,true);


你是不是用取AD里面的用户呀.
------解决方案--------------------
UP
------解决方案--------------------
不懂 帮顶

------解决方案--------------------
学习学习中
------解决方案--------------------
response.direct( " ")
------解决方案--------------------
不太清楚 可能是用户权限的问题
------解决方案--------------------
up
------解决方案--------------------
up
------解决方案--------------------
UP
------解决方案--------------------
up
------解决方案--------------------
1.
关于 User.Identity.Name
是使用 Forms 验证的设置的用户名


FormsAuthentication.RedirectFromLoginPage(用户名,true);

2.
不理解你的验证模式

其实,所谓的匿名访问,是使用了系统提供的一个内置帐号,一般为 IUSR_机器名称,并非真的匿名!
如果你在 IIS 中取消了匿名访问,那么就会弹出那个登录窗口,要你的windows帐号和密码!!!

3.
获取域名
// 获取客户端使用
string clientDNS = Request.HostDNSName;
string clientIP = Requst.HostAddress;

// 获取服务器端
string serverDNS = Request.ServerVariables[ "SERVER_NAME "];

Hope Helpful!

------解决方案--------------------
不会,顶!
------解决方案--------------------
up
------解决方案--------------------
up
------解决方案--------------------
up
------解决方案--------------------