C#中的活动目录开发
来源:互联网 发布:sql 分组小计总计 编辑:程序博客网 时间:2024/05/16 18:42
来源:Jin XING http://www.supinfo-projects.com/cn/2006/xing_jin_2006/conclusion/
Resume
- 介绍
- 1.活动目录的概念
- 1.1活动目录的概念
- 1.2?活动目录中的协议
- 2. 绑定
- 2.1 System.DirectoryServices 命名空间
- 2.2 绑定
- 2.3 例子
- 3. 活动目录的属性
- 3.1 列举活动目录的属性
- 3.2 属性集合
- 3.3 建立新对象
- 4. 在活动目录中搜索
- 4.1 DirectorySearcher 类
- 4.2 根节点
- 4.3 过滤器
- 4.4 属性
- 4.5 查找范围
- 4.6 排序
- 4.7 返回值
- 结语
1.活动目录的概念
我想大家都知道活动目录了。但是,为了让读者明白,我还是在说一下在.NET framework中活动目录的概念。
1.1活动目录的概念
活动目录中的数据以树形结构的形式储存。 也就是说,活动目录可以被看成是一颗树。为了节省时间,这里 将不对活动目录中的Object, multimaster replication, forest, sites 的概念进行重复。
1.2 活动目录中的协议
我们要说说活动目录中几个重要的协议。
1.2.1 LADP
轻型目录访问协议,经常被用来访问活动目录。如果你是一位C 语言开发者,你应该对使用LADP API 访问活动目录感到熟悉。但是,我们在C# l中使用-- ADSI (Active Directory Service Interface)来替代。
1.2.2 ADSI
活动目录服务接口,是 .NET framework 中的新工具。它定义了COM 接口来提供不同协议的服务。它在分布式系统中为不同的目录访问提供服务。要是用 ADSI ,就要引入System.DirectoryServices 命名空间。
下面式关于ADSI 服务的COM 接口的简图。COM 并不再本文中占有过多比例,即使式新手也能看懂。
本文中,我们主要使用LDAP 协议。你可以在MSDN中找到更详细的信息。
2. 绑定2.1 System.DirectoryServices 命名空间
我们使用 ADSI 来管理域控制器,在域中添加用户,管理打印机,这些都可以通过我们的程序来控制。 由于System.DirectoryServices命名空间,.NET 开发者多了一个有力的工具。 我们要讨论这个命名空间的类和函数: DirectoryEntry 这是 System.DirectoryServices 命名空间中最有用的一个类。它的实例代表活动目录中的对象。. DirectoryEntries 代表 DirectroryEntry 类的集合,包含活动目录的子目录。 DirectorySearcher 主要用于属性的搜索。
2.2 绑定
绑定用来连接活动目录:
开始的 “LDAP” 说明我们使用LADP协议连接活动目录。除了LADP,还有:GC, IIS, WinNT, NIDS and NWCOMPAR. 第二部分制定域控制器。如果不制定这部分, Windows Server 2003 会自动搜索域控制器。 第三部分是端口号。LDAP 的默认端口号是 389. The last part is the distinguished name. 你可以看到 “OU=***, DC=***, DC=**” 是基于X.500的LDAP语法。
2.3 例子
这是一个关于绑定的例子:
如果这是你第一次接触活动目录编程,你不能直接使用System.DirectoryServices 命名空间。 你必须添加这个命名空间到工程文件中。右键点击工程名,选择 “Add Reference…” ,再选择.NET ,选中System.DirectoryServices 再点OK.
3. 活动目录的属性
在绑定一个工作目录之后,我们应该拿那一个物件的不同属性。 也就是说,如果我们想要修改某事或把使用者加入那一个网域,我们起先应该知道那一个物件的结构。 在这章中,我们将会见到该如何列出特性,使用者附带说明, 而且在缀合的工作之后更新工作目录的信息。
3.1 列举活动目录的属性
有许多方法拿工作目录的物件特性,我们将会一点之前讨论他们:
一些属性在 DirectoryEntry 类别中会提供关于物件的有用资讯给我们, 举例来说, 像名字, Guid , SchemaClassName 和等等如果工作绑与特定的使用者帐户一起做,它能够直接地列出这些属性。
资讯科技也被推荐拿使用 DirectoryEntry.Properties 的属性。 但是在这一个条件中,你应该知道你想要拿的属性名字。 下列各项是一个简单的例子表现该如何在 C#语言中达成这.
3.2 属性集合
明显地, 有工作目录的许多不同类型的物件。 为了要取回这些属性, DirectoryEntry 类别的特性属性将会返回 PropertyCollection 。 因为一个属性可以包含许多数值,即将来临的一个好例图是使用者物件的
3.3 建立新对象
与 DirectoryEntry 类别的成员在一起,我们也可以产生工作目录的一个新的物件。
首先,我们绑 hebut.supinfo.com 服务器的一个组织的单位。 如果我们苍白的增加我们的新物件,我们应该第一绑一个组织的单位。 情形是相同的在工作目录管理中; 我们产生正确的 OU 的一个新的使用者。
此外,我们用被 DirectoryEntry.Children 退还的属性产生 DirectoryEntries 。 我们可以增加,划除, 而且更新我们以 DirectoryEntries 的帮忙需要的信息。 在这一个例子中,我显示方法增加. 这一个方法需要二个函数中的独立变数, 这第一一是符合简易资料存取协定的语法物件的名字; 秒一是工作目录的数据结构的型态。
而且,我们增加使用者我们刚刚创造的属性。 那增加 () 特性的方法将会增加特定的物件属性。 然而,如果属性在使用者物件中不退出,COMException 将会被丢。
最后,我们应该使用方法 DirectoryEntry.CommitChanges() 确定我们制造的变化。 这一个方法以 Java 语言语言相当像转储清除 () 方法, 清除存储器的区域,而且写数据进工作目录之内。
结语
本文只是涉及了活动目录在C#中编程的基础,随着实际的应用,你会发现C#语言的强大之处。可以说,这一个文章只是关于工作目录发展的基本介绍在 .框架。 我们已经检视一些由微软公司提供的有力工具。 由于 .技术,我们能够用我们自己的码操纵工作目录。 而且,我们可以在 C语言中为网络系统管理师制造比较有效率的工具#. 无论如何,C语言的新功能# 和 .框架是如此满意。
- C#中的活动目录开发
- c#遍历活动目录
- c#活动目录添加用户
- DNS在活动目录中的重要性
- 实战:Android活动目录LiveFolder开发
- 实战:Android活动目录LiveFolder开发
- 活动目录
- 活动目录
- 活动目录
- 活动目录
- 活动目录
- 活动目录
- 活动目录
- C#2.0 对AD(活动目录)的简单操作
- 在.Net环境下用C#操纵活动目录
- 在.Net环境下用C#操纵活动目录
- C#2.0 对AD(活动目录)的简单操作
- 在.Net环境下用C#操纵活动目录
- 加密三剑客SSL、SET和PGP
- WEB应用的缓存兼容性设计
- VC控件——CToolTipCtrl的用法
- 聚合(读书笔记)
- 教程/ASP 十天学会ASP之第一天
- C#中的活动目录开发
- "C++ Coding Standards" -- the Guru of all the C++ developers
- 鼠标单击窗口标题栏,不能拖动窗口
- 推荐:ASP初学者常用源代码总结篇
- ASP与SQL数据库连接代码
- Windows 2003 安装设置iis
- VC控件——CTreeCtrl中HitTest的用法
- 教程/ASP 十天学会ASP之第二天
- 等差数列