.NET 3.5账户管理新特性:System.DirectoryServices.AccountManagement

需积分: 14 1 下载量 50 浏览量 更新于2024-08-05 收藏 97.07MB PDF 举报
"该文档是关于.NET 3.5引入的账户管理类库System.DirectoryServices.AccountManagement的使用说明书,主要介绍了如何更方便地创建、修改和管理用户及组账户。" 在.NET 3.5框架中,微软为账户管理提供了一个新的程序集——System.DirectoryServices.AccountManagement,它简化了与用户和组账户相关的操作。在这个程序集中,有几个关键的类,它们使得开发者无需深入了解System.DirectoryServices或COM接口,就能处理Active Directory、本地系统账户和应用程序目录。 1. **PrincipalContext**: 这是账户管理的上下文基础,用于定义操作的环境,比如是域、本地机器还是应用程序目录。ContextType枚举用于设置上下文类型,并可以设置相应的域名、用户名和密码。 2. **Principal**: 这是一个基类,代表所有的主体,如用户和组。可以通过FindByIdentity()静态方法找到具有特定标识的主体,然后访问其属性,如名称、描述、可分辨名称和对象类型。 3. **AuthenticablePrincipal**: 这个类继承自Principal,用于表示可以验证身份的主体,如用户和计算机。提供了修改密码、解锁账户等功能。 4. **UserPrincipal**: 代表用户账户,继承自AuthenticablePrincipal。提供了许多属性来获取和设置用户信息,如员工ID、电子邮件地址、名字和电话号码。 5. **ComputerPrincipal**: 表示计算机账户,同样继承自AuthenticablePrincipal。 6. **GroupPrincipal**: 直接从Principal派生,用于管理组账户。可以获取组的成员,使用Members属性和GetMembers()方法。 7. **PrincipalCollection**: 存储Principal对象的集合,例如GroupPrincipal的Members属性返回的就是一个PrincipalCollection。 8. **PrincipalSearcher**和**PrincipalSearchResult<T>**: 这两个类用于搜索账户,PrincipalSearcher简化了查询过程,无需直接处理LDAP查询语法。 在实际应用中,例如要显示用户信息,可以使用UserPrincipal的Current静态属性,它会返回当前登录用户的信息。这些类和方法极大地简化了.NET应用程序中账户管理的工作,使得开发者能够更加高效和安全地管理用户和组账户。