在windows系统上可以使用下列方法来查找所有的员工邮箱和员工组:

 1 StringDictionary ReturnArray = new StringDictionary();
 2                 Dictionary<string, string> resultDict = new Dictionary<string, string>();
 3                 DirectoryEntry deDirEntry = new DirectoryEntry("LDAP://mail.test.com",
 4                                                                    UserName,
 5                                                                    Password,
 6                                                                    AuthenticationTypes.Secure);
 7
 8
 9
10                 DirectorySearcher mySearcher = new DirectorySearcher(deDirEntry);
11
12                 string sFilter = String.Format("(&(mailnickname=*)(|(objectcategory=user)(objectcategory=group)))");//(objectcategory=user)(objectcategory=group)
13
14                 mySearcher.Filter = sFilter;
15                 mySearcher.Sort.Direction = System.DirectoryServices.SortDirection.Ascending;
16                 mySearcher.Sort.PropertyName = "cn";
17                 mySearcher.PageSize = 1000;
18
19                 SearchResultCollection results;
20                 results = mySearcher.FindAll();

View Code

但是在移动端使用xamarin开发的时候是不能用上面的类的,需要使用其他的类库。

下面推荐使用novell.directory.ldap类库,可以在NuGet上搜索LDAP即可查到,在我们安装程序包时可能遇到在PCL(可移植的)上无法安装,没关系,我们可以单独只装各平台的代码就可以了,虽然写的代码一样,但是就是要分平台来写,下面是例子:

 1 cn.Connect("mail.test.com", 389);
 2                 cn.Bind("test@test.com", "**password**");
 3                 string sFilter = String.Format("(&(mailnickname=*)(|(objectcategory=user)(objectcategory=group)))");
 4                 LdapSearchResults ldapSearchResults = cn.Search("CN=Users,DC=corp,DC=test,DC=com", LdapConnection.SCOPE_SUB, sFilter, null, false);
 5                 var entries = new List<LdapEntry>();
 6                 try
 7                 {
 8                     while (ldapSearchResults.hasMore())
 9                     {
10                         entries.Add(ldapSearchResults.next());
11                     }
12                 }
13                 catch (LdapException ex)
14                 {
15                     System.Console.WriteLine(ex.LdapErrorMessage);
16                 }

View Code

注意事项,使用novell.directory.ldap时,有部分帐号无法连接。Search的参数请根据实际情况配置。

转载于:https://www.cnblogs.com/zuimengaitianya/p/7059949.html

novell.directory.ldap获取邮箱活动目录相关推荐

  1. C# -- Novell.Directory.Ldap连接LDAP作简单筛选查询,并处理objectGUID的乱码问题

    文章目录 什么是LDAP LDAP的特点 C#链接LDAP 代码 Linux 安装.NetCore环境 .NetCore WebApi 部署 什么是LDAP LDAP是轻量目录访问协议(Lightwe ...

  2. 使用Novell.Directory.Ldap.NETStandard在.NET Core中验证AD域账号

    Novell.Directory.Ldap.NETStandard是一个在.NET Core中,既支持Windows平台,又支持Linux平台,进行Windows AD域操作的Nuget包. 首先我们 ...

  3. Using .NET C# LDAP Library(Novell.Directory.Ldap)

    说明在这里 http://www.novell.com/coolsolutions/feature/11204.html 此Library需要的Mono.Security.dll 转载于:https: ...

  4. 活动目录(Active Directory)

    Active Directory和活动目录是同义词,已合并. 活动目录 百科名片 活动目录(Active Directory)是面向Windows Standard Server.Windows En ...

  5. Windows 2000活动目录详解

    我们知道WIN2K系统最大的突破性和成功之一就在于它全新引入的"活动目录(Active Directory)服务",使得WIN2K系统与Internet上的各项服务和协议更加联系紧 ...

  6. DNS 与 活动目录 的关系

    活动目录与DNS的区别 1,存储对象的区别 DNS是一种名称解析服务,通过dns服务器接受请求.查询DNS数据库,来把域或计算机解析为IP地址.dns不需要活动目录就可以起作用.   2,解析所用的数 ...

  7. 域渗透基础知识(二)之活动目录 Active Directory 的查询

    目录 Active Directory Active Directory 的查询基础语法 什么是BaseDN 什么是Naming Context 什么是LDAP(轻量级目录访问协议) 过滤规则 LDA ...

  8. 活动目录(Active Directory)管理,AD自动化

    每个IT管理员几乎每天都在Active Directory管理中面临许多挑战,尤其是在管理Active Directory用户帐户方面.手动配置用户属性非常耗时.令人厌烦且容易出错,尤其是在大型.复杂 ...

  9. 活动目录(Active Directory)域故障解决实例

    A1.客户机无法加入到域? 一.权限问题. 要想把一台计算机加入到域,必须得以这台计算机上的本地管理员(默认为administrator)身份登录,保证对这台计算机有管理控制权限.普通用户登录进来,更 ...

  10. 系统工程师加薪必备技能-活动目录 (Active Directory)

    一.活动目录的概述 活动目录是:基于LDAP协议将网络中的资源统一组织.集中地存储到目录数据库中(ntds.dit),可以实现集中.分散式的管理与控制,主要体现在可以查找数据库中的资源,可以对数据库添 ...

最新文章

  1. 空间谱专题01:信号模型
  2. linux message日志只有4k,命令长期运行 常用技巧 Linux 服务器 · 404k的前后端日志...
  3. swoole-co-pool v1.0.1,Swoole 协程工作池
  4. Kafka关键参数设置
  5. 你会采取什么方法改进你的测试用例_软件测试面试时常考的几道面试题
  6. SAP云平台CloudFoundry环境hdb build成功的日志分析
  7. 【学神-RHEL7】1-3-Linux基本命令和配置服务器来电后自动开机
  8. linux uwsgi 非root,nginx – 只能用root运行uwsgi
  9. 甲骨文前高管跳槽至富士通 主抓企业级存储
  10. 问题查询-批文页面显示别人操作的结果
  11. 移动app开发者必读:国内主要移动广告平台概况
  12. 【问题】eletron引入flash显示“无法加载插件”
  13. 从汽车尾气过滤陶瓷孔检测看远心镜头的应用前景-工业相机
  14. 音视频多媒体开发基础概述之颜色空间(2)YUV YIQ YCrCb CMY颜色空间
  15. 互联网 HR 黑话大全,太真实了!
  16. 【莫安迪原创摄影作品】深圳最美夕阳-烟云成画
  17. 计算机专业毕设太难做不出来怎么办?
  18. OKHttp 可能你从来没用过这样的拦截器
  19. CSS 变形(CSS3) transform
  20. 等候·《致我们终将逝去的青春》

热门文章

  1. spark mlib行矩阵(RowMatrix)入门
  2. Spark sql优化
  3. 开源:Http接口测试程序
  4. JavaScript核心语法学习部分(七)
  5. 让天下没有难做的研发:解读阿里CI/CD、DevOps、分层自动化技术
  6. UVA 12300 Smallest Regular Polygon(正多边形)
  7. Ioc容器beanDefinition-Spring 源码系列(1)
  8. WEB自动化(Python+selenium)的API
  9. iOSpush过后返回多级界面
  10. Qt5学习笔记之图标下载和转换