zoukankan      html  css  js  c++  java
  • ldap数据库--ldapsearch,ldapmodify

    简单介绍一下ldapsearch命令,在ldap搜索条目时很有用,只要适当调整filter就可以。

    命令如下:

      ldapsearch -h hostname -p port -b baseDN -D BIND_DN  [options] filter [attribute]...

      参数说明:  

        -h:主机名或ip地址

        -p:端口号 

        -b:suffix dn

        -D:使用搜索绑定的用户

      其他参数一般很少使用。下面举几个例子看一下:

    1)搜索所有条目:

      ldapsearch -h host -b "dc=example,dc=com" "(objectclass=*)"

    2)搜索cn为指定名字的条目

      ldapsearch -h host -b "dc=example,dc=com" "(cn=Babs Jensen)"

    3)使用filter文件进行搜索

      filter文件内容:

      sn=Francis

      givenname=Barbara

      指定搜索:

      ldapsearch -b "dc=example,dc=com" -h host -f filters cn uid

    4)模糊查询,uid包含test的条目

      ldapsearch -h host -b "dc=example,dc=com" "(uid=*test*)"

    5)同时满足多个属性,uid包含test,givenName包含test的条目

      ldapsearch -h host -b "dc=example,dc=com" "(|(uid=*test*)(givenName=*test*))"

    这里filter的书写规则和aci的filter中书写规则相同。

    通过ldapmodify可以更改条目属性,下面简单介绍一下,ldapmodify在添加,删除,更新,更改dn的操作

    1,添加条目,在使用ldapmodify添加条目的时候,可以手动输入要添加的条目的所有属性,也可以通过使用文件的方式进行添加;

      文件内容如下(add.ldif):在编辑文件时须将必填属性,例如uid,cn,sn等写完整

      dn: uid=bcubbins,ou=People,dc=example,dc=com
      objectclass: top
      objectclass: person
      objectclass: organizationalPerson
      objectclass: inetOrgPerson
      uid: bcubbins
      givenName: Bartholomew
      sn: Cubbins
      cn: Bartholomew Cubbins
      mail: bcubbins@example.com
      userPassword: bcubbins
      facsimiletelephonenumber: +1 234 567 8910  

      使用命令:

      ldapmodify -a -h host -D uid=bjensen,ou=people,dc=example,dc=com -w - -f add.ldif

      如果不是用文件,则需要在命令行下手动输入如上内容,完成后按回车键。例如:

      dn: uid=bcubbins,ou=People,dc=example,dc=com

      changeType:add

      objectclass: top
      objectclass: person
      objectclass: organizationalPerson
      objectclass: inetOrgPerson
      uid: bcubbins
      givenName: Bartholomew
      sn: Cubbins
      cn: Bartholomew Cubbins
      ....

      

    2,修该条目,修改条目和删除条目操作类似

     通过文件修改:

      dn: uid=bcubbins,ou=People,dc=example,dc=com

      changetype: modify
      add: description
      description: Added with ldapmodify
      -
      replace: mail
      mail: bart@example.com

      执行ldapmodify命令

      ldapmodify -h host -c -v -D uid=bjensen,ou=People,dc=example,dc=com -w - -f modify.ldif

     如果不通过文件修改,则需手动输入如上所有红色字体内容

    3,删除条目,删除条目是可以通过指定文件内容删除,手动输入需删除条目

      ldapmodify -h host -D uid=bjensen,ou=People,dc=example,dc=com -w -  

      dn: uid=bcubbins,ou=People,dc=example,dc=com
      changetype: delete
      deleting entry uid=bcubbins,ou=People,dc=example,dc=com

    4,移动条目,即更改条目uid,dn

      ldapmodify -h host -D uid=hmiller,ou=people,dc=example,dc=com -w -  

      changetype: modrdn
      newrdn: uid=jwallace
      deleteoldrdn: 0
      newsuperior: ou=special users,dc=example,dc=com

      deleteoldrdn:0,保留原dn;1,删除原dn。再进行条目移动时,需具有import和export权限。

  • 相关阅读:
    Redis基础用法
    SpringCloud
    Excel数据导入数据库
    MySQL数据库汇总
    Java8stream表达式
    LocalDateTime&LocalDate&LocalTime
    深入理解Java中的锁
    数据集合
    平台介绍
    dubbo源码阅读之自适应扩展
  • 原文地址:https://www.cnblogs.com/adam1991/p/7656108.html
Copyright © 2011-2022 走看看