当前位置: 首页 > news >正文

山东华泰建设集团有限公司官方网站/线下推广方式有哪些

山东华泰建设集团有限公司官方网站,线下推广方式有哪些,vue可以做pc的网站,莱芜网站建设与管理2019独角兽企业重金招聘Python工程师标准>>> 编写初步的测试链接代码如下,修改用户密码等我们是链接的是636端口而不是389 先简单的讲讲AD域和LdAP文件夹訪问协议:AD(active directory)活动文件夹,动态的建立整个域模式网络中的对象的数据库或…

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

编写初步的测试链接代码如下,修改用户密码等我们是链接的是636端口而不是389

先简单的讲讲AD域和LdAP文件夹訪问协议:AD(active directory)活动文件夹,动态的建立整个域模式网络中的对象的数据库或索引,协议为LDAP,安装了AD的server称为DC域控制器,存储整个域的对象的信息并周期性更新!当中的对象分为三大类——资源(如印表机)、服务(如电子邮件)、和人物(即帐户或用户,以及组)。 LDAP是一个用来公布文件夹信息到很多不同资源的协议。通常它都作为一个集中的地址被使用,只是依据组织者的须要,它能够做得更加强大。

LDAP事实上是一个电话簿,类似于我们所使用诸如NIS(Network Information Service)、DNS (Domain Name Service)等网络文件夹,也类似于你在花园中所示树木。

不少LDAP开发者喜欢把LDAP与关系数据库相比,觉得是还有一种的存贮方式,然后在读性能上进行比較。实际上,这样的对照的基础是错误的。LDAP和关系数据库是两种不同层次的概念,后者是存贮方式(同一层次如网络数据库,对象数据库),前者是存贮模式和訪问协议。LDAP是一个比关系数据库抽象层次更高的存贮概念,与关系数据库的查询语言SQL属同一级别。LDAP最主要的形式是一个连接数据库的标准方式。该数据库为读查询作了优化。因此它能够非常快地得到查询结果,只是在其他方面,比如更新,就慢得多。AD域和LdAP文件夹訪问协议就介绍到这里!

public static void openSSLConnect() throws Exception {
        String keystore = "D:\\Program Files\\jdk1.7.0_80\\jre\\lib\\security\\cacerts";
        System.setProperty("javax.net.ssl.trustStore", keystore);
        Properties env = new Properties();
        env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
        env.put(Context.PROVIDER_URL, "ldap://ip地址:636");
        env.put(Context.SECURITY_AUTHENTICATION, "simple");
        env.put(Context.SECURITY_PRINCIPAL, "xxxx@xxx");     
        env.put(Context.SECURITY_CREDENTIALS, "12345678");
        env.put(Context.SECURITY_PROTOCOL, "ssl");
        env.put("java.naming.referral", "follow");
        try {
            InitialLdapContext sss = new InitialLdapContext(env, null);
            System.out.println("成功了================");
            sss.close();
        } catch (NamingException e) {
            System.out.println("失败了================");
            e.printStackTrace();
        }
    }

测试修改用户密码代码如下(测试成功):

    String keystore = "D:\\Program Files\\jdk1.7.0_80\\jre\\lib\\security\\cacerts";
        System.setProperty("javax.net.ssl.trustStore", keystore);
        Properties env = new Properties();
        env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
        env.put(Context.PROVIDER_URL, "ldap://xxx:636");
        env.put(Context.SECURITY_AUTHENTICATION, "simple");
        env.put(Context.SECURITY_PRINCIPAL, "xxx@xxx.xxx.com");     
        env.put(Context.SECURITY_CREDENTIALS, "123456Ab");
        env.put(Context.SECURITY_PROTOCOL, "ssl");
        env.put("java.naming.referral", "follow");
        try {
            InitialLdapContext ldapCtx = new InitialLdapContext(env, null);
            
       
             ModificationItem[] mods = new ModificationItem[2];                          
             String oldQuotedPassword  = "\"123456Ab\"";              
             byte[] oldUnicodePassword = oldQuotedPassword.getBytes("UTF-16LE");              
             String newQuotedPassword  = "\"456789Ab\"";              
             byte[] newUnicodePassword = newQuotedPassword.getBytes("UTF-16LE");                      
  mods[0] = new ModificationItem(DirContext.REMOVE_ATTRIBUTE,new                     BasicAttribute("unicodePwd", oldUnicodePassword));              
  mods[1] = new ModificationItem(DirContext.ADD_ATTRIBUTE,new                          BasicAttribute("unicodePwd", newUnicodePassword));               
             String rootDn = getUserDN(ldapCtx,"xxx");
             System.out.println("rootDn================"+rootDn);
             ldapCtx.modifyAttributes(rootDn, mods);
            System.out.println("成功了================");
            ldapCtx.close();
        } catch (NamingException e) {
            System.out.println("失败了================");
            e.printStackTrace();
        } catch (UnsupportedEncodingException e) {
            System.out.println("失败了2w2w================");
            e.printStackTrace();
        }

特别注意密码格式,这是策略     一定要按照红色部分来做的

原因:这个最大的可能是不满足域安全策略:如密码复杂性、密码最短使用期限、强制密码历史。即长度、包含的字符、多久可以修改密码、是否可以使用历史密码等

 

 

在代码中我们用REMOVE_ATTRIBUTEADD_ATTRIBUTE在这个方法,而没用REPLACE_ATTRIBUTE这是因为REPLACE是管理员操作的权限,而用户自己是不能用REPLACE的

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://my.oschina.net/zhangph89/blog/844372

http://www.lbrq.cn/news/823861.html

相关文章:

  • 海南综合网站/搜外友链平台
  • 如何建设一个公司网站/佛山网站建设技术托管
  • 西宁知名网站制作公司/台湾新闻最新消息今天
  • 新乡网站建设设计/百度网游排行榜
  • 高校网站建设管理办法/简述网站内容如何优化
  • 浙江建站管理系统价格/杭州优化seo公司
  • 大气企业网站欣赏/专业恶意点击软件
  • 网站开发过程有几个阶段/职业培训机构资质
  • 一般网站服务费怎么入账做分录/百度如何精准搜索
  • magento 做的最牛逼的中文网站/站长工具seo综合
  • 校园网站建设网/seo基础知识考试
  • 网站开发职业生涯规划范文/品牌推广专员
  • 日喀则网站建设/福州整站优化
  • 如何制作购物网站/优化网站页面
  • 网站开发 开票/seo关键词优化软件app
  • 购物网站难做吗/网络优化公司
  • 新闻网站设计/东莞做网站seo
  • 黑帽seo怎么做网站排名/公司网站如何建设
  • 精美网页设计源码/苏州seo关键词优化外包
  • html5制作网站开发/站长工具seo客户端
  • 莆田有哪几家做网站设计的/鸡西seo顾问
  • vs2017网站开发组件/利于seo的建站系统有哪些
  • 好的做淘宝详情页的网站有哪些/百度网站收录提交入口
  • 建站哪个便宜/广州seo顾问服务
  • 外贸营销型网站建站/网站推广的途径有哪些
  • 网站首页设计参考/长沙seo培训
  • 阜阳做网站公司/快速seo关键词优化技巧
  • 怎么诊断网站/如何在百度提交自己的网站
  • 郑州做网站好/培训机构怎么找
  • 自建营销型网站模板/石家庄手机端seo
  • DBSCAN聚类算法
  • 基于Vue与CloudBase AI Toolkit的色觉识别Web应用开发报告:VibeCoding新范式实践
  • AtCoder Beginner Contest 415
  • Java中List<int[]>()和List<int[]>[]的区别
  • 二、Spark 开发环境搭建 IDEA + Maven 及 WordCount 案例实战
  • Unity笔记——Unity 封装方法指南