针对LDAP的验证方法( 四 )


监听攻击(passiveeavesdroppingattacks)的认证,但是没有提供避免主动
中间攻击 。
(3)对于需要会话保护和认证的目录,启动TLS扩展操作[5],和或者简单认证选择
或者SASLEXTERNAL机制,被一起使用 。工具应该(SHOULD)支持在部分6.2
中描述的口令认证,和应该(SHOULD)支持在部分7.1中描述的证书认证 。同
时,这些能提供完整性和传输数据的泄露保护,和客户及服务的认证,包括避
免主动中间攻击 。
假如TLS是被协商的,客户(程序)必须(MUST)丢弃所有先前TLS协商中获得的关于
服务(程序)的信息 。非凡是,supportedSASLMechanisms的值可以(MAY)在TLS已经协商
之后不同(非凡地,扩展(EXTERNAL)机制或者提出的明文(PLAIN)机制很可能仅在TLS
协商执行之后被列举出来) 。
假如SASL安全层(securitylayer)被协商,客户(程序)必须(MUST)丢弃所有先前
SASL中获得的关于服务(程序)的信息 。非凡是,假如客户(程序)被配置为支持多(multiple)
SASL机制,它应该(SHOULD)在SASL安全层被协商之前和之后获得supportedSASLMechanisms
并且验证其值在SASL安全层协商之后没有改变 。这个探测从supportedSASLMechanisms列表
中移去支持的SASL机制的主动攻击,并且答应客户确保它使用的由客户和服务都支持的最好
的机制(另外,这个应该(SHOULD)答应支持SASL机制列表的环境对客户提供通过不同的信
任源(trustedsource),例如,数字签名对象(digitallysignedobject)的一部分) 。
5.匿名认证
其修改实体或者存取受保护的属性或实体通常需要客户的认证 。没有打算执行任何这些
操作的客户典型的使用匿名认证 。
LDAP工具必须(MUST)支持匿名认证,在部分5.1中定义 。
LDAP工具可以(MAY)支持同TLS的匿名认证,在部分5.2中定义 。
当可能(MAY)有存取控制限制(accesscontrolrestrictions)阻碍目录实体的存取
时,LDAP服务应该(SHOULD)答应匿名绑定(anonymously-bound)的客户检索(retrieve)
根(root)DSE的supportedSASLMechanisms属性 。
LDAP服务可以(MAY)使用关于客户通过低层(lowerlayers)(网络协议)或者扩展的
授权(grant)或拒绝(deny)存取完全(控制)给匿名认证的客户的其他信息 。
5.1.匿名认证过程
一LDAP客户其还没有成功完成在连接之上的绑定操作是匿名地认证 。
一LDAP客户也可以(MAY)具体通过使用简单的认证选择的零长度(zero-length)OCTET
STRING绑定需求中指定匿名认证 。
5.2.匿名认证和TLS
LDAP客户(程序)可以(MAY)使用启动TLS操作[5]去协商TLS安全的使用[6] 。假如
客户还没有预先绑定,那么直到客户使用EXTERNALSASL机制去协商客户证书的识别
(recognition),客户是匿名地认证 。
推荐的TLS密码组在部分10中给出 。
LDAP服务在TLS协商过程中要求客户提供它们的证书,假如客户还没有一个有效证书时,
可以(MAY)使用本地安全策略去决定是否成功地完成TLS协商 。
6.基于口令的认证
LDAP工具必须(MUST)支持使用文摘MD5(DIGEST-MD5)SASL机制(保护口令)的口令
认证,在部分6.1中定义 。
当使用TLS保护连接防止被监听时,LDAP工具应该(SHOULD)支持"simple"口令选择认
证,在部分6.2中定义 。
6.1.文摘认证
LDAP客户可以通过在根DSE之上执行搜索请求、请求supportedSASLMechanisms属性、
以及检查是否字符串"DIGEST-MD5"作为值存在于这个属性中来判定是否服务支持这个机制 。

推荐阅读