AD 域账号登录
2024-10-11 14:57:08
域服务数据读写,有俩种模式
1、轻量级的数据读取
_domain是服务器的域名
获取连接PrincipalContext pc = new PrincipalContext(ContextType.Domain, _domain)
验证账号密码pc.ValidateCredentials(jobNumber, password)
引用System.DirectoryServices.AccountManagement命名空间后,按照如下如下方法,AD域验证
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, _domain))
{
// 工号一定要全
using (var userPrincipal = UserPrincipal.FindByIdentity(pc, IdentityType.SamAccountName,loginModel.JobNumber))
{
if (userPrincipal == null)
{
return "账号不正确,请重新输入";
}
if (!pc.ValidateCredentials(loginModel.JobNumber, loginModel.Password))
{
return @"密码输入错误,请重新输入";
}
//GivenName是用户名称,Surname是工号(无前缀),Name是用户名称+工号(无前缀)
PersonDetailInfo personDetailInfo = new PersonDetailInfo()
{
SearchName = userPrincipal.Name,
UserName = userPrincipal.GivenName,
JobNumber = userPrincipal.SamAccountName,
EmailAddress = userPrincipal.EmailAddress
};
return personDetailInfo;
}
}
2、DectoryEntry
可以获取整个服务器的数据,也可以修改其中的信息
参考类似文章:
http://www.it165.net/pro/html/201308/6829.html
最新文章
- 【Python五篇慢慢弹(3)】函数修行知python
- Java Servlet规范
- Jackson学习资料
- MQ安装配置
- Actipro Ribbon For WPF 界面控件免费下载地址
- 腾讯云centos6.5下部署django环境
- mysql 有索引没走索引 更新锁全表
- 【随笔】Linux &; Shell &; Minecraft
- String与常量池
- [034] 微信公众帐号开发教程第10篇-解析接口中的消息创建时间CreateTime(转)
- java 重载与重写 【转】
- neo4j 数据库导入导出
- Scala编程入门---函数式编程
- Python中实用却不常见的小技巧
- Android 梯形进度条、下载进度条;
- 解决KVM中宿主机通过console无法连接客户机
- [Go] 命令行参数解析包(flag 包)使用详解
- BASIC-30_蓝桥杯_阶乘计算
- javascript 跳出(终止)forEach循环
- Android-----------广告图片轮播控件
热门文章
- jQuery-1.9.1源码分析系列(十二) 筛选操作
- Oracle索引梳理系列(四)- Oracle索引种类之位图索引
- [PHP]Maximum execution time of 30 seconds exceeded
- 解决EP拒绝访问注册表Global键的的问题
- gson笔记 解析json数据
- No.008:String to Integer (atoi)
- 从零开始学 Java - CentOS 下 Nginx + Tomcat 配置负载均衡
- JMeter专题系列(三)元件的作用域与执行顺序
- 今天大雪 看雪花飘落HTML5特效
- jQuery弹出关闭遮罩层