uTools-Manuals/docs/java/javax/security/sasl/SaslServerFactory.html

165 lines
9.1 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.security.sasl
</div>
<h2 class="title" title="Interface SaslServerFactory">Interface SaslServerFactory</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre>public interface <span class="typeNameLabel">SaslServerFactory</span></pre>
<div class="block">
<span>用于创建SaslServer实例的<code>SaslServer</code></span>
<span>实现此接口的类必须是线程安全的并且可以处理多个同时发送的请求。</span>
<span>它也必须有一个不接受参数的公共构造函数。</span>
<p> <span>该接口通常不被服务器直接访问,这将使用<code>Sasl</code>静态方法。</span> <span>但是,特定的环境可以提供和安装新的或不同的<code>SaslServerFactory</code></span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.5
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/security/sasl/SaslServer.html" title="javax.security.sasl中的接口"><code>SaslServer</code></a> <a href="../../../javax/security/sasl/Sasl.html" title="javax.security.sasl中的类"><code>Sasl</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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="t3"><span><a href="javascript:show(4);">抽象方法</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/security/sasl/SaslServer.html" title="interface in javax.security.sasl">SaslServer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/security/sasl/SaslServerFactory.html#createSaslServer-java.lang.String-java.lang.String-java.lang.String-java.util.Map-javax.security.auth.callback.CallbackHandler-">createSaslServer</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> mechanism, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> protocol, <a href="../../../java/lang/String.html" title="class in java.lang">String</a> serverName, <a href="../../../java/util/Map.html" title="interface in java.util">Map</a>&lt;<a href="../../../java/lang/String.html" title="class in java.lang">String</a>,?&gt; props, <a href="../../../javax/security/auth/callback/CallbackHandler.html" title="interface in javax.security.auth.callback">CallbackHandler</a> cbh)</code>
<div class="block">
创建
<code>SaslServer</code>使用所提供的参数。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<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/security/sasl/SaslServerFactory.html#getMechanismNames-java.util.Map-">getMechanismNames</a></span>(<a href="../../../java/util/Map.html" title="interface in java.util">Map</a>&lt;<a href="../../../java/lang/String.html" title="class in java.lang">String</a>,?&gt; props)</code>
<div class="block">
返回与指定的机制选择策略匹配的机制名称数组。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="createSaslServer-java.lang.String-java.lang.String-java.lang.String-java.util.Map-javax.security.auth.callback.CallbackHandler-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>createSaslServer</h4> <pre><a href="../../../javax/security/sasl/SaslServer.html" title="interface in javax.security.sasl">SaslServer</a> createSaslServer(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> mechanism,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> protocol,
<a href="../../../java/lang/String.html" title="class in java.lang">String</a> serverName,
<a href="../../../java/util/Map.html" title="interface in java.util">Map</a>&lt;<a href="../../../java/lang/String.html" title="class in java.lang">String</a>,?&gt; props,
<a href="../../../javax/security/auth/callback/CallbackHandler.html" title="interface in javax.security.auth.callback">CallbackHandler</a> cbh)
throws <a href="../../../javax/security/sasl/SaslException.html" title="class in javax.security.sasl">SaslException</a></pre>
<div class="block">
<span>创建<code>SaslServer</code>使用所提供的参数。</span>
<span>如果不能使用提供的参数创建<code>SaslServer</code> 则返回null。</span>
<span>如果由于错误而无法创建<code>SaslServer</code> ,则抛出<code>SaslException</code></span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>mechanism</code> - <code>mechanism</code>的非空IANA注册名称。</span>
<span>例如“GSSAPI”“CRAM-MD5”</span>
</dd>
<dd>
<code>protocol</code> - 执行身份验证的协议的非空字符串名称例如“ldap”
</dd>
<dd>
<span><code>serverName</code> - 要验证的服务器的标准主机名,如果服务器未绑定到任何特定主机名,则为空。</span>
<span>如果机制不允许未绑定的服务器,则会抛出<code>SaslException</code></span>
</dd>
<dd>
<span><code>props</code> - 用于选择SASL机制并配置所选机制的认证交换的可能的空属性集。</span>
<span>有关标准属性的列表,请参阅<code>Sasl</code>类。</span>
<span>可以包括其他可能机制特定的属性。</span>
<span>与所选机制无关的属性将被忽略包括具有非String键的任何地图条目。</span>
</dd>
<dd>
<span><code>cbh</code> - SASL机制使用的可能的空回调处理程序以从应用程序/库获取进一步的信息来完成认证。</span>
<span>例如SASL机制可能需要来自呼叫者的身份验证ID密码和领域。</span>
<span>认证ID是通过使用所请求的<code>NameCallback</code></span>
<span>使用<code>PasswordCallback</code>密码。</span>
<span>该领域是通过使用要求<code>RealmChoiceCallback</code> ,如果有选择,领域列表,并通过使用<code>RealmCallback</code>如果必须输入领域。</span>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<span>使用提供的<code>SaslServer</code>创建可能为null的SaslServer。</span>
<span>如果为null则此工厂无法生产<code>SaslServer</code>使用提供的参数。</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../javax/security/sasl/SaslException.html" title="class in javax.security.sasl">SaslException</a></code> - 如果由于错误而无法创建
<code>SaslServer</code>
</dd>
</dl> </li>
</ul> <a name="getMechanismNames-java.util.Map-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>getMechanismNames</h4> <pre><a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] getMechanismNames(<a href="../../../java/util/Map.html" title="interface in java.util">Map</a>&lt;<a href="../../../java/lang/String.html" title="class in java.lang">String</a>,?&gt; props)</pre>
<div class="block">
返回与指定的机制选择策略匹配的机制名称数组。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>props</code> - 用于指定SASL机制的安全策略的可能的一组属性。</span>
<span>例如,如果<code>props</code>包含值为<code>"true"</code><code>Sasl.POLICY_NOPLAINTEXT</code>属性则工厂不得返回任何容易受到简单的被动攻击的SASL机制。</span>
<span>有关策略属性的完整列表,请参阅<code>Sasl</code>类。</span>
<span>非政策相关属性(如果存在于<code>props</code>将被忽略包括具有非String键的任何映射条目。</span>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
包含IANA注册的SASL机制名称的非空数组。
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>