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 ...
随机推荐
- Python3中的Json与Pickle
用于将数据存取到文件中: 1:Json的存数据到文件: import json info = { "name":"hjc", "age":2 ...
- 第一个spring MVC
1.导包 Spring所有包 2.web.xml配置 <?xml version="1.0" encoding="UTF-8"?> <web- ...
- luogu2948 滑雪课
题解里面全是dp的大神本蒟蒻瑟瑟发抖奉上一篇记忆化搜索... 其实嘛,记忆化搜索还是很安全透彻清真人品的,一般递推不好实现dp可以用记忆化搜索 然后本题先预处理一个mint[i]代表当前能力值为i,参 ...
- [TJOI2017]DNA (FFT)
[Luogu3763] FFT做字符串匹配即可,详见代码 // luogu-judger-enable-o2 #include<cstdio> #include<cstring> ...
- 网络流之最大流与最小费用流入门&&模板
理解处 刷题处 模板处 最大流模板 处理重边的+(优化) #include<bits/stdc++.h> using namespace std; ; const int INF = 0x ...
- WEB视频播放器插件,总结
WEB视频播放器插件,总结 2018年07月29日 20:42:11 流光忆莲 阅读数:572更多 个人分类: 推荐文章收藏 以下是关于网页中嵌入视频播放插件的各种资料的总结 基于H5的Vedio ...
- java登录验证码 用到spring框架
转载:https://blog.csdn.net/zqd_java/article/details/53638143 在次大神基础上添加下述js代码即可使用了. //登陆验证 function cha ...
- WindowsMTU修改
MTU是英文Maximum Transmission Unit的缩写,意为"最大传输单位".也就是通过TCP/IP协议所传输的数据包最大有多少字节,对于网速有极大的影响, MTU并 ...
- Java学习笔记day06_自定义类_ArrayList
1.自定义类class 使用类的形式, 对现实中的事物进行描述. 类是引用数据类型. 事物: 方法,变量. 方法:事物具备的功能. 变量:事物的属性. 格式: public class 类名{ //属 ...
- thinkPHP5.0 volist标签理解
{volist name="list" id="vo" offset="5" length="10"} .... {/v ...