游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

LDAP和AD域的介绍及使用

  1LDAP入门
  1。1定义
  LDAP是轻量目录访问协议(LightweightDirectoryAccessProtocol)的缩写,LDAP标准实际上是在X。500标准基础上产生的一个简化版本。
  1。2目录结构
  LDAP也可以说成是一种数据库,也有client端和server端。server端是用来存放数据,client端用于操作增删改查等操作,通常说的LDAP是指运行这个数据库的服务器。只不过,LDAP数据库结构为树结构,数据存储在叶子节点上。假设你要树上的一个苹果(一条记录),你怎么告诉园丁它的位置呢?
  当然首先要说明是哪一棵树(dc,相当于MYSQL的DB),然后是从树根到那个苹果所经过的所有分叉(ou),最后就是这个苹果的名字(uid,相当于MySQL表主键id)。好了!这时我们可以清晰的指明这个苹果的位置了,就是那棵歪脖树的东边那个分叉上的靠西边那个分叉的再靠北边的分叉上的半红半绿的
  因此,在LDAP中,位置可以描述如下树(dcljheee)
  分叉(oubei,ouxi,oudong)
  苹果(cnredApple)
  因此,苹果redApple的位置为
  dn:cnhonglv,oubei,ouxi,oudong,dcljheee
  dn标识一条记录,描述了数据的详细路径。因此,LDAP树形数据库如下dn(DistinguishedName):一条记录的详细位置
  dc:一条记录所属区域(哪一颗树)
  ou(OrganizationUnit):一条记录所属组织(哪一个分支)
  cnuid:一条记录的名字ID(哪一个苹果名字)LDAP目录树的最顶部就是根,也就是所谓的基准DN
  因此,LDAP树形结构在存储大量数据时,查询效率更高,实现迅速查找,可以应用于域验证等。
  1。3命名格式
  LDAP协议中采用的命名格式常用的有如下两种:LDAPURL和X。500。
  任何一个支持LDAP的客户都可以利用LDAP名通过LDAP协议访问活动目录,LDAP名不像普通的InternetURL名字那么直观,但是LDAP名往往隐藏在应用系统的内部,最终用户很少直接使用LDAP名。LDAP名使用X。500命名规范,也称为属性化命名法,包括活动目录服务所在的服务器以及对象的属性信息。
  2AD入门
  2。1AD定义
  AD是ActiveDirectory的缩写,AD是LDAP的一个应用实例,而不应该是LDAP本身。比如:windows域控的用户、权限管理应该是微软公司使用LDAP存储了一些数据来解决域控这个具体问题,只是AD顺便还提供了用户接口,也可以利用ActiveDirectory当做LDAP服务器存放一些自己的东西而已。比如LDAP是关系型数据库,微软自己在库中建立了几个表,每个表都定义好了字段。显然这些表和字段都是根据微软自己的需求定制的,而不是LDAP协议的规定。然后微软将LDAP做了一些封装接口,用户可以利用这些接口写程序操作LDAP,使得ActiveDirectory也成了一个LDAP服务器。
  2。2作用
  2。2。1用户服务
  管理用户的域账号、用户信息、企业通信录(与电子邮箱系统集成)、用户组管理、用户身份认证、用户授权管理、按需实施组管理策略等。这里不单单指某些线上的应用更多的是指真实的计算机,服务器等。
  2。2。2计算机管理
  管理服务器及客户端计算机账户、所有服务器及客户端计算机加入域管理并按需实施组策略。
  2。2。3资源管理
  管理打印机、文件共享服务、网络资源等实施组策略。
  2。2。4应用系统的支持
  对于电子邮件(Exchange)、在线及时通讯(Lync)、企业信息管理(SharePoint)、微软CRMERP等业务系统提供数据认证(身份认证、数据集成、组织规则等)。这里不单是微软产品的集成,其它的业务系统根据公用接口的方式一样可以嵌入进来。
  2。2。5客户端桌面管理
  系统管理员可以集中的配置各种桌面配置策略,如:用户适用域中资源权限限制、界面功能的限制、应用程序执行特征的限制、网络连接限制、安全配置限制等。
  2。3AD域结构常用对象
  2。3。1域(Domain)
  域是AD的根,是AD的管理单位。域中包含着大量的域对象,如:组织单位(OrganizationalUnit),组(Group),用户(User),计算机(Computer),联系人(Contact),打印机,安全策略等。
  可简单理解为:公司总部。
  2。3。2组织单位(OrganizationUnit)
  组织单位简称为OU是一个容器对象,可以把域中的对象组织成逻辑组,帮助网络管理员简化管理组。组织单位可以包含下列类型的对象:用户,计算机,工作组,打印机,安全策略,其他组织单位等。可以在组织单位基础上部署组策略,统一管理组织单位中的域对象。
  可以简单理解为:分公司。
  2。3。3群组(Group)
  群组是一批具有相同管理任务的用户账户,计算机账户或者其他域对象的一个集合。例如公司的开发组,产品组,运维组等等。可以简单理解为分公司的某事业部。
  群组类型分为两类:安全组:用来设置有安全权限相关任务的用户或者计算机账户的集合。比如:Tiger组都可以登录并访问某ftp地址,并拿到某个文件。
  通信组:用于用户之间通信的组,适用通信组可以向一组用户发送电子邮件。比如:我要向团队内10位成员都发送同一封邮件这里就要抄送9次,而使用组的话我直接可以发送给Tiger,所有Tiger组内的成员都会收到邮件。
  2。3。4用户(User)
  AD中域用户是最小的管理单位,域用户最容易管理又最难管理,如果赋予域用户的权限过大,将带来安全隐患,如果权限过小域用户无法正常工作。可简单理解成为某个工作人员。
  域用户的类型,域中常见用户类型分为:
  普通域用户:创建的域用户默认就添加到DomainUsers中。域管理员:普通域用户添加进DomainAdmins中,其权限升为域管理员。企业管理员:普通域管理员添加进EnterpriseAdmins后,其权限提升为企业管理员,企业管理员具有最高权限。
  一个大致的AD如下所示:
  总之:ActiveDirectoryLDAP服务器LDAP应用(Windows域控)。ActiveDirectory先实现一个LDAP服务器,然后自己先用这个LDAP服务器实现了自己的一个具体应用(域控)。
  3使用LDAP操作AD域
  特别注意:Java操作查询域用户信息获取到的数据和域管理员在电脑上操作查询的数据可能会存在差异(同一个意思的表示字段,两者可能不同)。
  连接ad域有两个地址:ldap:XXXXX。com:389和ldap:XXXXX。com:636(SSL)。
  端口389用于一般的连接,例如登录,查询等非密码操作,端口636安全性较高,用户密码相关操作,例如修改密码等。
  域控可能有多台服务器,之间数据同步不及时,可能会导致已经修改的数据被覆盖掉,这个要么域控缩短同步的时间差,要么同时修改每一台服务器的数据。
  3。1389登录只要不抛出异常就是验证通过publicLdapContextadLogin(JSONObjectjson){Stringusernamejson。getString(username);Stringpasswordjson。getString(password);Stringserverldap:XXXXXXX。com:389;try{HashtableString,StringenvnewHashtableString,String();用户名称,cn,ou,dc分别:用户,组,域env。put(Context。SECURITYPRINCIPAL,username);用户密码cn的密码env。put(Context。SECURITYCREDENTIALS,password);url格式:协议:ip:端口组,域,直接连接到域或者组上面env。put(Context。PROVIDERURL,server);LDAP工厂env。put(Context。INITIALCONTEXTFACTORY,com。sun。jndi。ldap。LdapCtxFactory);验证的类型none,simple,strongenv。put(Context。SECURITYAUTHENTICATION,simple);LdapContextldapContextnewInitialLdapContext(env,null);log。info(ldapContext:ldapContext);log。info(用户username登录验证成功);returnldapContext;}catch(NamingExceptione){log。info(用户username登录验证失败);log。info(错误信息:e。getExplanation());returnnull;}}
  3。2636登录验证(需要导入证书)证书提前倒入的Java库中参考:https:www。cnblogs。commoonsonp4454159。htmlLdapContextadLoginSSL(JSONObjectjson){Stringusernamejson。getString(username);Stringpasswordjson。getString(password);HashtableenvnewHashtable();StringjavaHomeSystem。getProperty(java。home);StringkeystorejavaHomelibsecuritycacerts;log。info(java。home,{},keystore);加载导入jdk的域证书System。setProperty(javax。net。ssl。trustStore,keystore);System。setProperty(javax。net。ssl。trustStorePassword,changeit);StringLDAPURLldap:XXXXXX。com:636;LDAP访问地址env。put(Context。INITIALCONTEXTFACTORY,com。sun。jndi。ldap。LdapCtxFactory);env。put(Context。SECURITYPROTOCOL,ssl);链接认证服务器env。put(Context。PROVIDERURL,LDAPURL);env。put(Context。SECURITYAUTHENTICATION,simple);env。put(Context。SECURITYPRINCIPAL,username);env。put(Context。SECURITYCREDENTIALS,password);try{LdapContextldapContextnewInitialLdapContext(env,null);log。info(认证成功);这里可以改成异常抛出。returnldapContext;}catch(javax。naming。AuthenticationExceptione){log。info(认证失败:{},e。getMessage());}catch(Exceptione){log。info(认证出错:{},e。getMessage());}returnnull;}
  3。3查询域用户信息publicListgetUserKey(JSONObjectjson){JSONObjectadminnewJSONObject();admin。put(username,Aaaaa);admin。put(password,bbbbbbbb);Stringnamejson。getString(name);log。info(需要查询的ad信息:{},name);ListJSONObjectresultListnewJSONArray();LdapContextldapContextadLogin(admin);连接到域控if(ldapContext!null){Stringcompany;Stringresult;try{域节点StringsearchBaseDCXXXXXXX,DCcom;LDAP搜索过滤器类cnname模糊查询cnname精确查询StringsearchFilter(objectClasstype);StringsearchFilter(sAMAccountNamename);查询域帐号创建搜索控制器SearchControlssearchCtlsnewSearchControls();StringreturnedAtts〔〕{description,sAMAccountName,userAccountControl};searchCtls。setReturningAttributes(returnedAtts);设置指定返回的字段,不设置则返回全部设置搜索范围深度searchCtls。setSearchScope(SearchControls。SUBTREESCOPE);根据设置的域节点、过滤器类和搜索控制器搜索LDAP得到结果NamingEnumerationanswerldapContext。search(searchBase,searchFilter,searchCtls);初始化搜索结果数为0inttotalResults0;introws0;while(answer。hasMoreElements()){遍历结果集SearchResultsr(SearchResult)answer。next();得到符合搜索条件的DNrows;Stringdnsr。getName();log。info(dn);AttributesAttrssr。getAttributes();得到符合条件的属性集if(Attrs!null){try{for(NamingEnumerationneAttrs。getAll();ne。hasMore();){AttributeAttr(Attribute)ne。next();得到下一个属性读取属性值for(NamingEnumerationeAttr。getAll();e。hasMore();totalResults){companye。next()。toString();JSONObjecttempJsonnewJSONObject();tempJson。put(Attr。getID(),company。toString());resultList。add(tempJson);}}}catch(NamingExceptione){log。info(ThrowException:e。getMessage());}}}log。info(总共用户数:rows);}catch(NamingExceptione){log。info(ThrowException:e。getMessage());}finally{try{ldapContext。close();}catch(Exceptione){e。printStackTrace();}}}returnresultList;}
  3。4重置用户密码管理员重置用户密码,后强制用户首次登录修改密码publicMapString,StringupdateAdPwd(JSONObjectjson){Stringdnjson。getString(dn);要修改的帐号(这个dn是查询的用户信息里的dn的值,而不是域账号)Stringpasswordjson。getString(password);新密码JSONObjectadminnewJSONObject();admin。put(username,aaaaaaa);admin。put(password,bbbbbbb);MapString,StringmapnewHashMapString,String();LdapContextldapContextadLoginSSL(admin);连接636端口域ModificationItem〔〕modsnewModificationItem〔2〕;if(ldapContext!null){try{StringnewQuotedPasswordpassword;byte〔〕newUnicodePasswordnewQuotedPassword。getBytes(UTF16LE);unicodePwd:修改的字段,newUnicodePassword:修改的值mods〔0〕newModificationItem(DirContext。REPLACEATTRIBUTE,newBasicAttribute(unicodePwd,newUnicodePassword));mods〔1〕newModificationItem(DirContext。REPLACEATTRIBUTE,newBasicAttribute(pwdLastSet,0));首次登录必须修改密码修改密码ldapContext。modifyAttributes(dn,mods);map。put(result,S);map。put(message,成功);}catch(Exceptione){map。put(result,E);map。put(message,无法重置密码);}finally{try{ldapContext。close();}catch(Exceptione){e。printStackTrace();}}}else{log。info();map。put(result,E);map。put(message,验证失败);}returnmap;}
  3。5域账号解锁表示锁定的字段需要测试,不一定这个lockoutTimepublicMapString,Stringdeblocking(JSONObjectjson){JSONObjectadminnewJSONObject();Stringdnjson。getString(dn);被解锁的帐号(这个dn指的是查询用户信息里的dn的值,不是域账号)admin。put(username,aaaaaa);admin。put(password,bbbbbb);MapString,StringmapnewHashMapString,String();LdapContextldapContextadLogin(admin);ModificationItem〔〕modsnewModificationItem〔1〕;if(ldapContext!null){try{0表示未锁定,不为0表示锁定mods〔0〕newModificationItem(DirContext。REPLACEATTRIBUTE,newBasicAttribute(lockoutTime,0));解锁域帐号ldapContext。modifyAttributes(dn,mods);map。put(result,S);map。put(message,成功);}catch(Exceptione){map。put(result,E);map。put(message,解锁失败);}finally{try{ldapContext。close();}catch(Exceptione){e。printStackTrace();}}}else{map。put(result,E);map。put(message,验证失败);}returnmap;}
  总结
  专注分享行业最新消息和前沿技术资讯,关注我!第一时间获取最新前沿,积累技术人弯道超车的资本

大便溏稀,消化不良?你可能是脾胃虚弱,4招教你养好脾胃俗话说得好,民以食为天。我们很多人或许没有特别大追求,但所有人都会有一个生活的最低标准温饱。温饱代表了吃住,吃作为我们安身立命的最基本的需求,很多人却往往为之苦恼。有些人消化不……wycon口红色号wycon口红试色图大全意大利wycon口红相比kiko比较的平价,色号方面也比较的多,每个人都能找到自己喜欢的颜色。那么wycon口红色号有哪些?下面小编为你提供wycon口红试色图大全。wycon……fancl芳珂化妆品怎么样?芳珂护肤品好用吗近年来随着保养意识的高涨,几乎所有女性天天早晚都会使用化妆保养品,但你有想过如果选用到含有防腐剂的产品,对肌肤反而是种负担吗?为了让女孩们都能安心无虞的享受最天然有效的保……奥运冠军挺过削球关,王曼昱3比1逆转韩莹,日乒一哥一姐齐奏凯北京时间10月27日消息,2022年世界乒乓球职业大联盟WTT世界杯决赛在河南新乡展开首日争夺。女单首轮,王曼昱克服慢热,以3比1击败39岁的削球老将韩莹,伊藤美诚3比0战胜老……ysl黑管唇釉407和欧莱雅琉光唇釉307哪个好?ysl黑管唇釉407简直是断货王,非常的难以买到,有些人只好买替代色欧莱雅琉光唇釉307。那么ysl黑管唇釉407和欧莱雅琉光唇釉307哪个好?对比火遍大江南北的Ysl4……吃枸杞对银屑病有帮助?枸杞性味甘,具有延缓衰老、清新明目的功效,据现代药理学证明枸杞可以调节机体的免疫功能,调节血糖血脂,促进造血功能等,枸杞对人体有着很多的益处,那么对于银屑病患者有什么作用呢?……小时候目睹爸爸殴打了妈妈,20年后,我也对妻子动了手人们常说家暴只有0次和无数次,但随着网络通讯技术的飞速发展,现如今家暴的情况也比较普遍,有一些家暴的案例被我们了解到,而绝大多数却并没有被曝光出来。家暴不仅会给被暴力者造……银保监会二季度接到保险消费投诉2。8万件人保财险投诉量居财险央广网北京9月28日消息9月28日,中国银保监会消费者权益保护局发布《关于2022年第二季度保险消费投诉情况的通报》(下称《通报》)。中国银保监会及其派出机构第二季度共接收并转……资生堂新透白遮瑕笔多少钱?资生堂新透白遮瑕笔专柜价格资生堂新透白遮瑕笔是最近很火的一款遮瑕产品,凭借着高保湿的质地获得了很多好评。今天5号网小编要为大家介绍的是,资生堂新透白遮瑕笔多少钱?资生堂新透白遮瑕笔专柜价格是多少?资生堂……kiko口红8系色号推荐kiko口红8系试色图kiko口红8系价格比9系的稍贵,但它带有防晒的作用,并且色号同样很多。那么kiko口红8系色号有哪些?下面小编为你提供kiko口红8系试色图。kiko口红8系色号8系是……2017发蜡排行榜2017发蜡新品推荐发蜡是很多短发妹子和男士做造型时必备的神器,能够轻松帮助大家打造出想要的发型。今天5号网小编要为大家介绍的是,2017发蜡排行榜怎么样?2017发蜡新品推荐有哪些?2017发蜡……故宫为什么没有厕所?古代人在故宫都是怎么上厕所的?故宫兴建于明成祖永乐四年,迄今为止已经有600多年的历史了。故宫总占地面积约72万平方米,建筑面积也达到了15万平方米,有大大小小的宫殿70多座,鼎盛时期宫中曾住过一万多……
第十六届新疆冬博会27个重点文旅项目签约涉及资金110亿随着第十六届新疆冬季旅游产业交易博览会(以下简称第十六届新疆冬博会)暨十七届人类滑雪起源地纪念日活动2022年12月30日在新疆阿勒泰市开幕,27个重点文旅项目成功签约。……哪个牌子的眉粉好用眉粉的正确使用方法眉粉一般在画眉毛的时候也是用的比较多的了,那么哪个牌子的眉粉是比较好用的呢?眉粉的正确使用方法到底是什么?哪个牌子的眉粉好用KATE凯朵立体造型三色眉粉这是一盒多用……jillstuart眉粉怎么样jill晶耀眉彩饼jillstuart的化妆品包装都非常好看,很少女心,jillstuart是日常的一个彩妆品牌,jillstuart旗下有很多好用的化妆品,jillstuart晶耀眉彩饼粉质细……kate三色眉粉怎么样好用吗kate三色眉粉画眉教程kate三色眉粉一直是很火的一款单品,很多人都推荐过,性价比非常高,不论是画眉毛还是作为修容都很棒,是KATE家的鎮店之宝,那么kate三色眉粉怎么样好用吗?kate三色眉粉画……百雀羚眉粉怎么样?百雀羚眉粉怎么用只有你想不到的百雀羚,没有他做不到的百雀羚,这一次,小编给大家推荐的一款百雀羚的眉粉,也是三生花彩妆系列的新品,三色设计,可以更好调和,眉色更加自然百雀羚眉粉多少钱百雀羚……土豆丝不要炒着吃了,加入1勺面粉,5分钟解决全家人早餐,太香土豆丝不要炒着吃了,加入1勺面粉,5分钟解决全家人早餐,太香了。现在已经是冬天了,大家有没有发现市场上蔬菜价格一天比一天贵了?在这个时候很多人都会选择去吃土豆,没有别的原因,土……ipsa五色眉粉怎么用?ipsa茵芙莎五色眉粉使用方法ipsa五色眉粉是一款超级好用的眉粉,相对于kate的眉粉来说,我更喜欢这一只,这款眉粉基本攻占了日本妹纸的化妆包,配色有5种颜色之多哦!那么,ipsa五色眉粉怎么用?ipsa……奶茶色口红推荐20226款大牌奶茶色唇膏口红的色号真的多到眼花缭乱,像什么吃土色啊、吃小孩色啊;但是身为少女得的我只想喝口奶茶。下面5号网小编带大家来看一下奶茶色口红推荐2022,6款大牌奶茶色唇膏。奶茶色口红介绍……町屋酒店怀石料理日式庭院,京都为何让我念念不忘?日本俳谐大师松尾芭蕉有一首诗:京京,翻译过来就是:即使在京都,听杜鹃叫声,也想念京都。这是一座拥有古韵、情怀、格调的城市,让人抱着期待只身前往,流连在石板路上,看那些上了……以色列护肤品哪个牌子好用2022以色列最好的化妆品品牌2018以色列美妆特展,揭开以色列神秘面纱。大家都知道以色列是各种植物和草药的王国,最有名的死海富含独特的矿物质、盐和黑泥,其治疗品质举世闻名。下面5号网小编带大家来看一下以色……原来老猫是在跟我道别,我却傻傻地不知道天下没有不散的宴席,人如此,猫亦如此。养猫的人终将会经历与猫咪分离的那一刻,这是命中注定的。如果老猫出现这些行为,说明它在跟你道别,别傻傻地不知道!从未有过的……科研人员提出高均匀度多层Halbach磁体设计理论Halbach阵列磁体是由多个不同磁化方向磁块按规律组装而成的永磁体构型。得益于磁材利用率高、均匀性高、逸散场小的优势,Halbach阵列磁体在一些对于体积要求紧凑、可移动、可……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网