uTools-Manuals/docs/java/javax/naming/ldap/StartTlsRequest.html

327 lines
14 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
compact3
</div>
<div class="subTitle">
javax.naming.ldap
</div>
<h2 class="title" title="Class StartTlsRequest">Class StartTlsRequest</h2>
</div><div class="contentContainer">
<ul class="inheritance">
<li><a href="../../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>javax.naming.ldap.StartTlsRequest</li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
All Implemented Interfaces:
</dt>
<dd>
<span><a href="../../../java/io/Serializable.html" title="java.io中的接口">Serializable</a> <a href="../../../javax/naming/ldap/ExtendedRequest.html" title="javax.naming.ldap中的接口">ExtendedRequest</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public class <span class="typeNameLabel">StartTlsRequest</span>
extends <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a>
implements <a href="../../../javax/naming/ldap/ExtendedRequest.html" title="interface in javax.naming.ldap">ExtendedRequest</a></pre>
<div class="block">
<span>该类实现了Lightweight Directory Access Protocol (v3): Extension for Transport Layer Security中定义的StartTLS的LDAPv3扩展请求<a href="http://www.ietf.org/rfc/rfc2830.txt">。StartTLS</a>的对象标识符为1.3.6.1.4.1.1466.20037,未定义扩展请求值。</span>
<p> <span><tt><tt>StartTlsResponse分之StartTlsRequest</tt></tt>用来建立在与其上<tt>extendedOperation()</tt>被调用JNDI上下文相关联的现有的LDAP连接的TLS连接。</span> <span>通常JNDI程序如下使用这些类。</span> </p>
<blockquote>
<span><pre>
import javax.naming.ldap.*;
// Open an LDAP association
LdapContext ctx = new InitialLdapContext();
// Perform a StartTLS extended operation
StartTlsResponse tls =
(StartTlsResponse) ctx.extendedOperation(new StartTlsRequest());
// Open a TLS connection (over the existing LDAP association) and get details
// of the negotiated TLS session: cipher suite, peer certificate, etc.
SSLSession session = tls.negotiate();
// ... use ctx to perform protected LDAP operations
// Close the TLS connection (revert back to the underlying LDAP association)
tls.close();
// ... use ctx to perform unprotected LDAP operations
// Close the LDAP association
ctx.close;
</pre></span>
</blockquote>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.4
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/naming/ldap/StartTlsResponse.html" title="javax.naming.ldap中的类"><code>StartTlsResponse</code></a> <a href="../../../serialized-form.html#javax.naming.ldap.StartTlsRequest">Serialized Form</a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- --> </a> <h3>Field Summary</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Field Summary table, listing fields, and an explanation">
<caption>
<span>Fields</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/naming/ldap/StartTlsRequest.html#OID">OID</a></span></code>
<div class="block">
StartTLS扩展请求的分配对象标识符为1.3.6.1.4.1.1466.20037。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- --> </a> <h3>构造方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
<caption>
<span>构造方法</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../javax/naming/ldap/StartTlsRequest.html#StartTlsRequest--">StartTlsRequest</a></span>()</code>
<div class="block">
构建一个StartTLS扩展请求。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- --> </a> <h3>方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
<caption>
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t4"><span><a href="javascript:show(8);">具体的方法</a></span><span class="tabEnd"> </span></span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor" id="i0">
<td class="colFirst"><code><a href="../../../javax/naming/ldap/ExtendedResponse.html" title="interface in javax.naming.ldap">ExtendedResponse</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/naming/ldap/StartTlsRequest.html#createExtendedResponse-java.lang.String-byte:A-int-int-">createExtendedResponse</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> id, byte[] berValue, int offset, int length)</code>
<div class="block">
创建对应于LDAP StartTLS扩展请求的扩展响应对象。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/naming/ldap/StartTlsRequest.html#getEncodedValue--">getEncodedValue</a></span>()</code>
<div class="block">
检索StartTLS请求的ASN.1 BER编码值。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/naming/ldap/StartTlsRequest.html#getID--">getID</a></span>()</code>
<div class="block">
检索StartTLS请求的对象标识符字符串。
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- --> </a> <h3>Methods inherited from class java.lang.<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a></h3> <code><a href="../../../java/lang/Object.html#clone--">clone</a>, <a href="../../../java/lang/Object.html#equals-java.lang.Object-">equals</a>, <a href="../../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../../java/lang/Object.html#hashCode--">hashCode</a>, <a href="../../../java/lang/Object.html#notify--">notify</a>, <a href="../../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../../java/lang/Object.html#toString--">toString</a>, <a href="../../../java/lang/Object.html#wait--">wait</a>, <a href="../../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../../java/lang/Object.html#wait-long-int-">wait</a></code></li>
</ul> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- --> </a> <h3>字段详细信息</h3> <a name="OID">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>OID</h4> <pre>public static final <a href="../../../java/lang/String.html" title="class in java.lang">String</a> OID</pre>
<div class="block">
StartTLS扩展请求的分配对象标识符为1.3.6.1.4.1.1466.20037。
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../constant-values.html#javax.naming.ldap.StartTlsRequest.OID">Constant Field Values</a>
</dd>
</dl> </li>
</ul> </li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="StartTlsRequest--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>StartTlsRequest</h4> <pre>public StartTlsRequest()</pre>
<div class="block">
构建一个StartTLS扩展请求。
</div> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="getID--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getID</h4> <pre>public <a href="../../../java/lang/String.html" title="class in java.lang">String</a> getID()</pre>
<div class="block">
检索StartTLS请求的对象标识符字符串。
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../../javax/naming/ldap/ExtendedRequest.html#getID--">getID</a></code>在界面
<code><a href="../../../javax/naming/ldap/ExtendedRequest.html" title="interface in javax.naming.ldap">ExtendedRequest</a></code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
对象标识符字符串“1.3.6.1.4.1.1466.20037”。
</dd>
</dl> </li>
</ul> <a name="getEncodedValue--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getEncodedValue</h4> <pre>public byte[] getEncodedValue()</pre>
<div class="block">
<span>检索StartTLS请求的ASN.1 BER编码值。</span>
<span>由于请求没有定义的值因此始终返回null。</span>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../../javax/naming/ldap/ExtendedRequest.html#getEncodedValue--">getEncodedValue</a></code>在界面
<code><a href="../../../javax/naming/ldap/ExtendedRequest.html" title="interface in javax.naming.ldap">ExtendedRequest</a></code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
空值。
</dd>
</dl> </li>
</ul> <a name="createExtendedResponse-java.lang.String-byte:A-int-int-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>createExtendedResponse</h4> <pre>public <a href="../../../javax/naming/ldap/ExtendedResponse.html" title="interface in javax.naming.ldap">ExtendedResponse</a> createExtendedResponse(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> id,
byte[] berValue,
int offset,
int length)
throws <a href="../../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></pre>
<div class="block">
<span>创建对应于LDAP StartTLS扩展请求的扩展响应对象。</span>
<p> <span>结果必须是StartTlsResponse的具体子类并且必须具有公共零参数构造函数。</span> </p>
<p> <span>该方法通过查找具有以下名称的配置文件来定位实现类:</span> </p>
<blockquote>
<span><tt> META-INF/services/javax.naming.ldap.StartTlsResponse </tt></span>
</blockquote>
<span>调用线程的上下文类加载器必须可以访问配置文件及其对应的实现类。</span>
<p> <span>每个配置文件应包含一个完全限定类名的列表,每行一个。</span> <span>忽略每个名称周围的空格和制表符,以及空白行。</span> <span>评论的字符是<tt>'#'</tt> <tt>0x23</tt> ;</span> <span>在每行上,忽略第一个注释字符之后的所有字符。</span> <span>文件必须以UTF-8编码。</span> </p>
<p> <span>该方法将返回第一个实现类的实例,它可以从配置文件收集的类名列表中成功加载和实例化。</span> <span>该方法使用调用线程的上下文类加载器来查找配置文件并加载实现类。</span> </p>
<p> <span>如果没有类可以这样找到,这个方法将使用实现特定的方法来定位一个实现。</span> <span>如果没有找到则抛出NamingException。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../../javax/naming/ldap/ExtendedRequest.html#createExtendedResponse-java.lang.String-byte:A-int-int-">createExtendedResponse</a></code>在界面
<code><a href="../../../javax/naming/ldap/ExtendedRequest.html" title="interface in javax.naming.ldap">ExtendedRequest</a></code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>id</code> - 扩展响应的对象标识符。</span>
<span>其值必须为“1.3.6.1.4.1.1466.20037”或null。</span>
<span>这两个值是等效的。</span>
</dd>
<dd>
<span><code>berValue</code> - 扩展响应的可能为零的ASN.1 BER编码值。</span>
<span>这是包含标签和响应值长度的原始BER字节。</span>
<span>它不包括响应OID。</span>
<span>它的值将被忽略因为启动TLS响应不会包含任何响应值。</span>
</dd>
<dd>
<span><code>offset</code> - 在berValue中使用的字节的起始位置。</span>
<span>它的值将被忽略因为启动TLS响应不会包含任何响应值。</span>
</dd>
<dd>
<span><code>length</code> - 要使用的berValue中的字节数。</span>
<span>它的值将被忽略因为启动TLS响应不会包含任何响应值。</span>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
StartTLS扩展响应对象。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../javax/naming/NamingException.html" title="class in javax.naming">NamingException</a></code> - 如果在创建StartTLS扩展响应对象时遇到命名异常。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/naming/ldap/ExtendedResponse.html" title="javax.naming.ldap中的接口"><code>ExtendedResponse</code></a></span>
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>