软件测试 | LDAP常见操作指南

文章详细介绍了LDAP的各种操作,包括绑定(ThreadBind,SingleBind/Unbind)、解除绑定、比较、搜索、添加、修改、删除和修改DN。这些操作构成了与LDAP服务器交互的基础,如验证用户、查找和管理目录中的对象。
摘要由CSDN通过智能技术生成

扩展LDAP采样器被设计用来支持非常复杂的测试目标,它会尽可能地支持各项LDAP操作。在本节中将会介绍共有多少LDAP操作,以及它们的作用。针对每一种操作,会简要地介绍它们是如何实现的。

LDAP服务器可以被视为某种分级的数据库,它们会将对象(条目)存入树中。树的最高部分称为树的根节点。

例如,如果树以dc=com作为开始,那么根节点就是dc=com。

下一级可以存在于根节点之下,例如dc=siemens。那么对象的全名(DN),就是“dc=siemens,dc=com”。当然,还可以添加下一级,在dc=siemens,dc=com下添加“cn=admin”。这样一来,该对象的DN就是“cn=admin,dc=siemens,dc=com”。

相对DN是DN的最后部分,例如cn=admin.

对象的特性是由objectClass决定,objectClass可以被视为属性的结合。对象的类型由“structural objectClass”决定,例如person、organizationalUnit或者country。属性中包含有对象的数据,例如mailadress、name、streetaderss等。每一个属性可以包含0、1或者更多值。

1.绑定操作(Bind)

任何与LDAP服务器之间的通信,都必须以绑定请求作为开始。LDAP是一种依赖于状态的协议。如果没有打开与LDAP服务器之间的会话,那么其他后续请求都无法被处理。由于Java库的一些古怪特性,所以总共有两种不同的绑定操作实现。

1)线程绑定(Thread Bind)

这种绑定意味着打开一个LDAP服务器之间的会话,任何测试计划都应该使用这种操作为会话的起点。对于每一个线程(每一个虚拟用户)而言,需要与LADP服务器建立不同的连接,因此需要执行不同的线程绑定操作。

2)单一绑定/解除绑定(Single Bind/Unbind)

这种绑定主要被用于用户验证确认。一个正确设计的LDAP客户端,通常会需要验证用户,因此会使用DN和密码来执行绑定操作。单一绑定/解除绑定就是为这一目标而实现的。它会通过执行绑定操作,来创建LDAP客户端的独立连接,并在后续关闭该连接(通过单一解除绑定操作)。

2.解除绑定操作(Unbind)

要关闭一个与LDAP服务器之间的连接,需要执行一个解除绑定操作。由于单一绑定/解除绑定已经执行过一次解除绑定操作看,因此只需要执行一下线程解除绑定操作。这一线程解除绑定操作只是关闭连接,并清楚连接所占用的资源。

3.比较操作(Compare)

比较操作需要LDAP对象的完整DN,以及一个属性和该属性的值。它会简单地检查这个LDAP对象是否包含有指定的属性,且该属性的值是否符合预期。一个典型的用法是,检验指定用户内的特定用户的成员。

4.搜索操作(Search)

搜索操作就是使用给定的过滤器寻找符合条件的对象。例如,所有满足“employeeType=inactive”的人或者所有userID=user1的人。

5.添加操作(Add)

该操作会简单地在LDAP目录中添加一个对象。当然,属性组合和DN都应该是正确的。

6.修改操作(Modify)

该操作会修改指定对象的一个或者多个属性。该操作需要知道待修改对象的DN,和需要修改的属性及其值。

修改操作分为3种。

  • 添加:添加一个属性值
  • 替换:使用一个新值来代替旧的属性值
  • 删除:从一个属性中删除某个值,或者删除一个属性的所有值

7.删除操作(Delete)

这一操作从LDAP服务器中删除某个对象,它需要待删除对象的DN

8.修改DN(modDN)

这一操作会修改某个对象的DN(它会移除该对象)

该操作可能带来两种效果。第一种,仅仅重命名一条数据,接着知名一个新的RND(相对DN,就是DN的最后部分)。

例如,测试人员可以将“cn=admin,dc=siemens,dc=com”重命名为“cn=administrator,dc=Siemens,dc=com”。

第二种,通过指定一个新的上级,来命名一个完整的分支。

例如,测试人员可以将完整的分支“ou=retires,ou=people,dc=siemens,dc=com”调整为“or=retired people,dc=siemens,dc=com”。只需指定一个新的RUN“ou=retired people”,并制定一个新的上级“dc=siemens,dc=com”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值