Module java.naming
module java.naming
定义了Java命名和目录接口(JNDI)API。
可能会被JNDI提供程序支持的常见标准JNDI环境属性在Context
中定义和记录。特定的JNDI提供程序实现也可能支持其他环境或系统属性,这些属性是特定于它们的实现的。
- 实现注意事项:
-
JDK中默认的LDAP命名服务提供程序实现支持以下特定于实现的环境属性:
com.sun.jndi.ldap.connect.timeout
:
此属性的值是表示连接超时的整数的字符串表示形式(以毫秒为单位)。如果LDAP提供程序在该期间无法建立连接,则会中止连接尝试。整数应大于零。小于或等于零的整数意味着使用网络协议(即TCP)的超时值。
如果未指定此属性,则默认值是等待连接建立或直到底层网络超时。com.sun.jndi.ldap.read.timeout
:
此属性的值是表示LDAP操作的读取超时的整数的字符串表示形式(以毫秒为单位)。如果LDAP提供程序在该期间无法获得LDAP响应,则会中止读取尝试。整数应大于零。小于或等于零的整数意味着未指定读取超时,这相当于无限期等待响应直到接收到为止。
如果未指定此属性,则默认值是等待响应直到接收到为止。com.sun.jndi.ldap.tls.cbtype
:
此属性的值是要求在SSL/TLS上的LDAP连接中所需的TLS通道绑定类型的字符串表示形式。可能的值是:- "tls-server-end-point" - 通道绑定数据是基于TLS服务器证书创建的。
"tls-unique" TLS通道绑定类型在RFC-5929中指定但不受支持。
如果未指定此属性,客户端将不向服务器发送通道绑定信息。
JDK中默认的LDAP命名服务提供程序实现支持以下特定于实现的系统属性:
com.sun.jndi.ldap.object.trustSerialData
:
此系统属性的值是控制从javaSerializedData
LDAP属性反序列化Java对象,从javaRemoteLocation
LDAP属性重建RMI引用,以及从javaReferenceAddress
LDAP属性重建二进制引用地址的布尔值的字符串表示形式。要允许从javaSerializedData
、javaRemoteLocation
或javaReferenceAddress
属性反序列化或重建Java对象,系统属性值可以设置为true
(不区分大小写)。
如果未指定该属性,则不允许从javaSerializedData
、javaRemoteLocation
或javaReferenceAddress
属性反序列化Java对象。jdk.jndi.object.factoriesFilter
:
此系统属性的值定义了JNDI运行时实现使用的过滤器,用于控制允许实例化由命名/目录系统返回的对象引用的对象工厂类的集合。引用实例命名的工厂类将与此过滤器匹配。过滤器属性支持与jdk.serialFilter
相同格式的基于模式的过滤器语法。在过滤器属性中指定的限制模式未使用。此属性也可以指定为安全属性。此属性也受默认JNDI RMI提供程序支持。
默认值允许由引用实例指定的任何对象工厂类重新创建引用的对象。jdk.jndi.ldap.object.factoriesFilter
:
此系统属性的值定义了JDK LDAP提供程序实现使用的过滤器,用于进一步限制允许从LDAP系统返回的对象引用实例化的对象工厂类的集合。首先,引用实例命名的工厂类将与此特定过滤器匹配,然后与全局过滤器匹配。如果这两个过滤器中的任何一个拒绝该工厂类,或者如果它们都不允许该工厂类,则将拒绝该工厂类。过滤器属性支持与jdk.serialFilter
相同格式的基于模式的过滤器语法。在过滤器属性中指定的限制模式未使用。
默认值允许由JDK LDAP提供程序实现提供的任何对象工厂类。
如果全局ObjectFactoryBuilder
未被设置,则此系统属性将用于仅过滤LDAP特定对象工厂。
其他提供程序可能在其模块描述中定义其他属性:
- 模块图:
- 自JDK版本:
- 9
-
Packages
PackageDescription提供了访问命名服务的类和接口。扩展了javax.naming
包,提供了访问目录服务的功能。提供了在访问命名和目录服务时进行事件通知的支持。提供了对LDAPv3扩展操作和控件的支持。提供了通过javax.naming
和相关包动态插入访问命名和目录服务支持的方法。 -
Services
TypeDescription此接口表示创建初始上下文的工厂。在执行LDAP操作时,用于DNS查找的服务提供程序类。此类实现了在轻量级目录访问协议(v3):传输层安全性扩展中定义的LDAPv3扩展响应StartTLS。StartTLS的对象标识符为1.3.6.1.4.1.1466.20037,未定义扩展响应值。