Active Directory 域服务对象
局域网计算机控制中心
可以在DC上控制所有局域网资源(计算机 、用户、设备)
大中型企业管理必备。
最后,它还可以让开发人员集成LDAP身份认证,使用域账号登录应用。
也就是说,此企业的所有系统,都可以用你的计算机账号来进行登录,授权。
<<Program.cs>>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.DirectoryServices;
using System.Collections;
using System.Text.RegularExpressions;
namespace ActiveDirectoryDome
{
class Program
{
static void Main(string[] args)
{
if (TryAuthenticate("prepat.net", "administrator", "yclb2009@"))
{
Console.WriteLine("登陆成功!");
}
else
{
Console.WriteLine("登陆失败!");
}
Console.WriteLine("*******************************************************");
List<string> group = new List<string>();
group = GetADGroups("administrator", "prepat.net", "administrator", "yclb2009@");
foreach (string temp in group)
{
Console.WriteLine("组名称:"+temp.ToString());
}
Console.ReadLine();
}
/// <summary>
/// 验证AD用户是否登陆成功
/// </summary>
/// <param name="domain">域名称</param>
/// <param name="username">用户名</param>
/// <param name="password">密码</param>
/// <returns>返回登陆状态</returns>
public static bool TryAuthenticate(string domain, string username, string password)
{
bool isLogin = false;
try
{
DirectoryEntry entry = new DirectoryEntry(string.Format("LDAP://{0}", domain), username, password);
entry.RefreshCache();
isLogin = true;
}
catch
{
isLogin = false;
}
return isLogin;
}
/// <summary>
/// 取用户所对应的用户组
/// </summary>
/// <param name="userName">用户名称</param>
/// <param name="domain">域</param>
/// <param name="adusername">登陆用户</param>
/// <param name="adpassword">登陆密码</param>
/// <returns></returns>
public static List<string> GetADGroups(string userName,string domain,string adusername,string adpassword)
{
List<string> groups = new List<string>();
try
{
var entry = new DirectoryEntry(string.Format("LDAP://{0}", domain), adusername, adpassword);
entry.RefreshCache();
DirectorySearcher search = new DirectorySearcher(entry);
search.PropertiesToLoad.Add("memberof");
search.Filter = string.Format("sAMAccountName={0}", userName);
SearchResult result = search.FindOne();
if (result != null)
{
ResultPropertyValueCollection c = result.Properties["memberof"];
foreach (var a in c)
{
string temp = a.ToString();
Match match = Regex.Match(temp, @"CN=\s*(?<g>\w*)\s*.");
groups.Add(match.Groups["g"].Value);
}
}
}
catch
{
}
return groups;
}
}
}
Active Directory 域服务对象的更多相关文章
- [Azure附录]1.在Windows Server 2012中安装Active Directory域服务
<Windows Azure Platform 系列文章目录> 1.登陆Windows Server 2012,打开服务器管理器,选择"添加角色和功能" 2.在&quo ...
- Windows Server 2012中安装Active Directory域服务
1.登陆Windows Server 2012,打开服务器管理器,选择"添加角色和功能" 2.在"开始之前"页面,直接点击"下一步" 3.选 ...
- install Active Directory域控制器
设置Active Directory域控制器 正如我们在网络与系统配置专题文章中所提到的那样,我们已将两部服务器设置为对应于内部域“intdomain.com”的Active Directory域控制 ...
- cmd 执行Dcpromo错误:在该 SKU 上不支持 Active Directory 域服务安装向导,Windows Server 2008 R2 Enterprise 配置AD(Active Directory)域控制器
今天,要安装AD域控制器,运行dcpromo结果提示:在该 SKU 上不支持 Active Directory 域服务安装向导. 以前弄的时候直接就通过了,这次咋回事?终于搞了大半天搞定了. 主要原因 ...
- Active Directory 域服务安装与测试
Active Directory 域服务安装与测试 实验原理: 安装域服务并创建用户,把另一个电脑加入域中,然后用域账户登录以及用本地账户登录测试 实验条件:windows server 2008(域 ...
- 您真的会修改Active Directory域控制器计算机名称吗
从我开始做微软这行开始,就经常听说某某公司由于什么原因需要修改Active Directory域控制器计算机名称,但发现好多公司都是直接修改,导致了各种奇葩的问题,今天就给大家推荐一个修改Active ...
- Active Directory 域服务(AD DS)
本文内容 概述 工作组架构与域架构 名称空间(Namespace) 对象(Object).容器(Container)与组织单位(Organization Units,OU) 域树(Domain Tre ...
- Active Directory域服务备份
此篇介绍如何通过Windows Server Backup工具备份Active Directory域服务 AD 域系统状态 在域控制器上,系统状态通常包括以下内容,但所包含的数据实际上取决于服务器上安 ...
- Active Directory 域服务 (AD DS) 虚拟化
TechNet 库 Windows Server Windows Server 2012 R2 和 Windows Server 2012 服务器角色和技术 Active Directory Acti ...
随机推荐
- datetime问题
DateUtil.format(DateTime.now(), DatePattern.NORM_DATE_PATTERN);. 此方法将现在时间转为yy--mm--dd格式 mysql中日期运算 ...
- Java泛型<>内各种参数的异同
先说下本篇随笔主要涉及到的东西(参考Java编程思想一书): 1.说明 List<Fruit> 与 List<Apple> 之间为什么是非继承关系. 2.由 1 引出的问题说明 ...
- window下 mysql密码忘记
1.打开MySQL配置文件 my.ini中,添加上skip-grant-tables,可以添加到文件的末尾或者是这添加到[mysqld]的下面. 2.重启mysql 3.这时登录MySQL不再需要验证 ...
- JDK源码 Integer.bitCount(i)
1.问题:输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 2.解决方法很多,JDK提供了一种,如下图 /** * Returns the number of one-bits in ...
- Nginx02---指令集实现静态文件服务器
location 实现静态服务器,就是root和alias命令,他们位于location文件块中,详细:https://www.jianshu.com/p/4be0d5882ec5 root root ...
- LUNA16数据集的百度云链接
可能需要会员链接:https://pan.baidu.com/s/1KTjoGKfLB_1Y-BQzerhGgg 提取码:g901
- C语言中的常用函数_持续更新
isspace函数: 背景:之前遇到scanf()输入时会把换行符留在输入队列的情况,如果下次要用到getchar(),但是会导致其先返回这个我们不需要的换行符:从而导致不希望出现的行为: 说明:检查 ...
- Kibana问题搜集---下载源码,执行npm install 报错
npm ERR! code ELIFECYCLEnpm ERR! errno 1npm ERR! chromedriver@2.34.0 install: `node install.js`npm E ...
- C# web项目添加*.ashx文件后报错处理
说明:我是菜鸟,博文水平有限,仅作学习过程中的备忘笔记 1.截图信息: ———————————————————————————————————————————————————————————————— ...
- TensorFlow入门测试程序
import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mnist=input_data. ...