文档

Java™教程
隐藏目录
简单
路径: Java命名和目录接口
课程: LDAP用户的高级主题
部分: 安全性

简单

简单认证由向LDAP服务器发送客户端(用户)的完全限定DN和客户端的明文密码组成(请参阅RFC 2251RFC 2829)。这种机制存在安全问题,因为密码可以从网络中读取。为了避免以这种方式暴露密码,可以在加密通道(如SSL)中使用简单认证机制,前提是LDAP服务器支持。

LDAP v2和v3都支持简单认证。

要使用简单认证机制,必须按如下设置三个认证环境属性。

Context.SECURITY_AUTHENTICATION
设置为"simple"
Context.SECURITY_PRINCIPAL
设置为正在验证的实体的完全限定DN(例如"cn=S. User, ou=NewHires, o=JNDITutorial")。它的类型为java.lang.String
Context.SECURITY_CREDENTIALS
设置为主体的密码(例如"mysecret")。它的类型为java.lang.Stringchar数组(char[])或byte数组(byte[])。如果密码是java.lang.Stringchar数组,则在传输到服务器时使用UTF-8进行LDAP v3编码,使用ISO-Latin-1进行LDAP v2编码。如果密码是byte[],则按原样传输到服务器。

请参阅本节前面的示例,了解如何使用简单认证。


注意:如果您向Context.SECURITY_CREDENTIALS环境属性提供空字符串、空byte/char数组或null,则认证机制将为"none"。这是因为LDAP要求密码不能为空。如果未提供密码,协议会自动将认证转换为"none"


上一页: 匿名
下一页: SASL