| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 9372 人关注过本帖
标题:C#如何获取当前用户在AD的用户名密码
只看楼主 加入收藏
yhw0508
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-8-12
结帖率:100%
收藏
 问题点数:0 回复次数:6 
C#如何获取当前用户在AD的用户名密码
C#如何获取当前用户在AD的用户名密码
企业中建了AD域,企业希望用AD域用户名,密码登陆电脑时,可以不再需要输入账户密码直接进入管理系统。
搜索更多相关主题的帖子: 管理系统 用户名 密码 如何 
2013-08-12 18:06
Maick
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:32
帖 子:251
专家分:1314
注 册:2012-9-21
收藏
得分:0 
//应用
using System.DirectoryServices;
using System.DirectoryServices.ActiveDirectory;
using System.DirectoryServices.Protocols;

using System.DirectoryServices;
using System.DirectoryServices.ActiveDirectory;
using System.DirectoryServices.Protocols;
 //检查是否xxxx公司的AD
 public bool IsUserValid(string name, string pwd)
    {
        string logName = "";
        string fullName = @"xxxxx\";
        try
        {
            DirectoryEntry objDE = new DirectoryEntry("LDAP://192.168.6.6", fullName + name, pwd, AuthenticationTypes.ServerBind);
            //修改密码..
            // objDE.Invoke("ChangePassword",new object[]{"ccc","fff"});
            //();
            DirectorySearcher mySearcher = new DirectorySearcher(objDE);
            mySearcher.Filter = ("(SAMAccountName=" + name + ")");
            SearchResult s = mySearcher.FindOne();
            if (s != null)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        catch (Exception)
        {
            return false;
        }

    }
2013-08-14 16:29
yhw0508
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-8-12
收藏
得分:0 
回复 2楼 Maick
我AD域ip 10.1.0.1 域名hssetest 用户test 密码P@ssw0rd
按下面这样写的 保错:捕捉到 System.Runtime.
  Message=该服务器不可操作。
  Source=System.DirectoryServices
  ErrorCode=-2147016646

DirectoryEntry objDE = new DirectoryEntry("LDAP://10.1.0.1", "hssetest\test", "P@ssw0rd", AuthenticationTypes.ServerBind);
DirectorySearcher mySearcher = new DirectorySearcher(objDE);
mySearcher.Filter = ("(SAMAccountName=" + name + ")");
SearchResult s = mySearcher.FindOne();
2013-08-14 16:56
Aviva_Wang
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:苏州
等 级:贵宾
威 望:26
帖 子:701
专家分:2382
注 册:2013-3-12
收藏
得分:0 
回复 2楼 Maick
这段代码发布到IIS7.0中获取的域名为IIS APPPOOL,请问您知道该怎么设置吗?

asp
2013-08-15 08:00
Maick
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:32
帖 子:251
专家分:1314
注 册:2012-9-21
收藏
得分:0 
域名不是在一台服务器上保存的吗
都是192.168.*.*.的吧,是服务器的物理IP地址,10.1.0.1是上网分配的ip地址吧
2013-08-15 10:00
Maick
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:32
帖 子:251
专家分:1314
注 册:2012-9-21
收藏
得分:0 
你那个 hsseest\test,这个也错了..反斜杠不用@这个要这样写\\
2013-08-15 10:03
yhw0508
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-8-12
收藏
得分:0 
回复 6楼 Maick
谢谢,已解决。
2013-08-16 18:51
快速回复:C#如何获取当前用户在AD的用户名密码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018509 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved