增加自定义插件,新增js,java,vue,jquery手册

This commit is contained in:
fofolee
2019-04-18 16:49:06 +08:00
parent 6ec74eefc3
commit 1e8f76c000
5934 changed files with 2276419 additions and 926 deletions

View File

@@ -0,0 +1,243 @@
<div class="header">
<div class="subTitle">
compact1, compact2, compact3
</div>
<div class="subTitle">
javax.security.auth.spi
</div>
<h2 class="title" title="Interface LoginModule">Interface LoginModule</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre>public interface <span class="typeNameLabel">LoginModule</span></pre>
<div class="block">
<p> <span><code>LoginModule</code>描述了认证技术提供商实现的接口。</span> <span>LoginModules插入应用程序以提供特定类型的身份验证。</span> </p>
<p> <span>当应用程序写入<code>LoginContext</code> API时认证技术提供商实现了<code>LoginModule</code>接口。</span> <span>A <code>Configuration</code>指定要与特定登录应用程序一起使用的LoginModule。</span> <span>因此可以在应用程序下插入不同的LoginModules而不需要对应用程序本身进行任何修改。</span> </p>
<p> <span><code>LoginContext</code>是负责读取<code>Configuration</code>和实例相应的LoginModules。</span> <span>每个<code>LoginModule</code>初始化为<code>Subject</code> ,一个<code>CallbackHandler</code> ,共享<code>LoginModule</code>状态并且特定LoginModule的选项。</span> <span><code>Subject</code>表示<code>Subject</code>目前正在认证,如果认证成功,则与相关证书更新。</span> <span>LoginModule的使用<code>CallbackHandler</code>与用户沟通。</span> <span>例如, <code>CallbackHandler</code>可以用于提示用户名和密码。</span> <span>请注意, <code>CallbackHandler</code>可能为null。</span> <span>LoginModules绝对需要一个<code>CallbackHandler</code>认证<code>Subject</code>可能会抛出一个<code>LoginException</code></span> <span>LoginModules可以选择使用共享状态来在它们之间共享信息或数据。</span> </p>
<p> <span>具体LoginModule的选项表示被配置为这个选项<code>LoginModule</code>通过在登录管理员或用户<code>Configuration</code></span> <span>这些选项由<code>LoginModule</code>本身定义并控制其中的行为。</span> <span>例如, <code>LoginModule</code>可以定义支持调试/测试功能的选项。</span> <span>选项使用键值语法定义,例如<i>debug = true</i></span> <span><code>LoginModule</code>将选项存储为<code>Map</code> ,以便可以使用该键检索值。</span> <span>请注意, <code>LoginModule</code>选择定义的选项数量没有限制。</span> </p>
<p> <span>呼叫应用程序将认证过程视为单个操作。</span> <span>然而LoginModule内的<code>LoginModule</code>过程分为两个不同阶段。</span> <span>在第一阶段LoginModule的<code>login</code>方法由LoginContext的<code>login</code>方法调用。</span> <span><code>login</code>的方法<code>LoginModule</code>然后执行实际的身份验证(提示和验证例如密码),并保存为私有状态信息其认证状态。</span> <span>一旦完成LoginModule的<code>login</code>方法返回<code>true</code> (如果成功)或<code>false</code> (如果应该被忽略),或者抛出一个<code>LoginException</code>来指定一个失败。</span> <span>在失败的情况下, <code>LoginModule</code>不得重试验证或引入延迟。</span> <span>这些任务的责任属于应用程序。</span> <span>如果应用程序尝试重试身份验证则将再次调用LoginModule的<code>login</code>方法。</span> </p>
<p> <span>在第二个阶段如果LoginContext的整个身份验证成功相关的REQUIREDREQUISITE充分可选的LoginModule成功然后是<code>commit</code>的方法<code>LoginModule</code>被调用。</span> <span><code>commit</code>的方法<code>LoginModule</code>检查其私有保存状态,看看自己的身份验证成功。</span> <span>如果整个<code>LoginContext</code>认证成功并且LoginModule自己的认证成功<code>commit</code>方法将相关主体(认证身份)和凭据(加密密钥等认证数据)与<code>Subject</code>中的<code>LoginModule</code></span> </p>
<p> <span>如果LoginContext的整体身份验证失败相关的REQUIREDREQUISITESUPPICIENT和可选LoginModules没有成功那么每个<code>LoginModule</code><code>abort</code>方法都<code>LoginModule</code>被调用。</span> <span>在这种情况下, <code>LoginModule</code>会删除/销毁最初保存的任何身份验证状态。</span> </p>
<p> <span>注销一个<code>Subject</code>只涉及一个阶段。</span> <span><code>LoginContext</code>调用LoginModule的<code>logout</code>方法。</span> <span><code>logout</code>的方法<code>LoginModule</code>然后执行退出过程,诸如从除去校长或凭证<code>Subject</code>或记录会话信息。</span> </p>
<p> <span>一个<code>LoginModule</code>实现必须有一个没有参数的构造函数。</span> <span>这允许加载<code>LoginModule</code>类实例化它。</span> </p>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../../javax/security/auth/login/LoginContext.html" title="javax.security.auth.login中的类"><code>LoginContext</code></a> <a href="../../../../javax/security/auth/login/Configuration.html" title="javax.security.auth.login中的类"><code>Configuration</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>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/security/auth/spi/LoginModule.html#abort--">abort</a></span>()</code>
<div class="block">
中止认证过程的方法阶段2
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/security/auth/spi/LoginModule.html#commit--">commit</a></span>()</code>
<div class="block">
提交认证过程的方法阶段2
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/security/auth/spi/LoginModule.html#initialize-javax.security.auth.Subject-javax.security.auth.callback.CallbackHandler-java.util.Map-java.util.Map-">initialize</a></span>(<a href="../../../../javax/security/auth/Subject.html" title="class in javax.security.auth">Subject</a> subject, <a href="../../../../javax/security/auth/callback/CallbackHandler.html" title="interface in javax.security.auth.callback">CallbackHandler</a> callbackHandler, <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; sharedState, <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; options)</code>
<div class="block">
初始化此LoginModule。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/security/auth/spi/LoginModule.html#login--">login</a></span>()</code>
<div class="block">
验证
<code>Subject</code> 第1阶段的方法。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/security/auth/spi/LoginModule.html#logout--">logout</a></span>()</code>
<div class="block">
注销一个
<code>Subject</code>
</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="initialize-javax.security.auth.Subject-javax.security.auth.callback.CallbackHandler-java.util.Map-java.util.Map-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>initialize</h4> <pre>void initialize(<a href="../../../../javax/security/auth/Subject.html" title="class in javax.security.auth">Subject</a> subject,
<a href="../../../../javax/security/auth/callback/CallbackHandler.html" title="interface in javax.security.auth.callback">CallbackHandler</a> callbackHandler,
<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; sharedState,
<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; options)</pre>
<div class="block">
<span>初始化此LoginModule。</span>
<p> <span>此方法由<code>LoginContext</code>调用,此后<code>LoginModule</code>已被实例化。</span> <span>这种方法的目的是初始化这个<code>LoginModule</code>的相关信息。</span> <span>如果此<code>LoginModule</code>存储在<code>sharedState</code><code>options</code>参数中的任何数据,则可以忽略它们。</span> </p>
<p></p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>subject</code> -在
<code>Subject</code>进行身份验证。
<p></p>
</dd>
<dd>
<code>callbackHandler</code> -一个
<code>CallbackHandler</code>用于与最终用户进行通信(提示用户名和密码,例如)。
<p></p>
</dd>
<dd>
<code>sharedState</code> - 与其他配置的LoginModules共享的状态。
<p></p>
</dd>
<dd>
<code>options</code> - 在特定LoginModule的登录
<code>Configuration</code>中指定的
<code>LoginModule</code>
</dd>
</dl> </li>
</ul> <a name="login--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>login</h4> <pre>boolean login()
throws <a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></pre>
<div class="block">
<span>验证<code>Subject</code> 第1阶段的方法。</span>
<p> <span>该方法的实现验证了一个<code>Subject</code></span> <span>例如,它可能会提示输入用户名和密码等<code>Subject</code>信息,然后尝试验证密码。</span> <span>该方法将认证尝试的结果保存在LoginModule中的私有状态。</span> </p>
<p></p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
如果身份验证成功则为true;如果该验证成功则为false否则为
<code>LoginModule</code>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></code> - 如果身份验证失败
</dd>
</dl> </li>
</ul> <a name="commit--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>commit</h4> <pre>boolean commit()
throws <a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></pre>
<div class="block">
<span>提交认证过程的方法阶段2</span>
<p> <span>如果LoginContext的整体身份验证成功相关的请求REQUISITESUPPICIENT和可选LoginModules成功则调用此方法。</span> </p>
<p> <span>如果此LoginModule自己的身份验证尝试成功通过检索通过<code>login</code>方法保存的私有状态检查),则此方法将相关主体和凭据与位于<code>Subject</code>中的<code>LoginModule</code></span> <span>如果此LoginModule自身的身份验证尝试失败则此方法将删除/销毁最初保存的任何状态。</span> </p>
<p></p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
如果此方法成功了,还是假的,如果这
<code>LoginModule</code>应该被忽略。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></code> - 如果提交失败
</dd>
</dl> </li>
</ul> <a name="abort--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>abort</h4> <pre>boolean abort()
throws <a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></pre>
<div class="block">
<span>中止认证过程的方法阶段2</span>
<p> <span>如果LoginContext的整体身份验证失败则调用此方法。</span> <span>相关要求必要有效和可选的LoginModules没有成功</span> </p>
<p> <span>如果此LoginModule自己的身份验证尝试成功通过检索由<code>login</code>方法保存的私有状态进行检查),则此方法将清除最初保存的任何状态。</span> </p>
<p></p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
如果此方法成功了,还是假的,如果这
<code>LoginModule</code>应该被忽略。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></code> - 如果中止失败
</dd>
</dl> </li>
</ul> <a name="logout--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>logout</h4> <pre>boolean logout()
throws <a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></pre>
<div class="block">
<span>注销一个<code>Subject</code></span>
<p> <span>此方法的实现可能会删除/销毁主题的主体和凭据。</span> </p>
<p></p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
如果此方法成功了,还是假的,如果这
<code>LoginModule</code>应该被忽略。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../../javax/security/auth/login/LoginException.html" title="class in javax.security.auth.login">LoginException</a></code> - 如果注销失败
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>

View File

@@ -0,0 +1,48 @@
<div class="header">
<h1 class="title" title="Package">Package javax.security.auth.spi</h1>
<div class="docSummary">
<div class="block">
该包提供了用于实现可插拔认证模块的接口。
</div>
</div>
<p>See: <a href="#package.description">描述</a></p>
</div><div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table border="0" cellpadding="3" cellspacing="0" class="typeSummary" summary="Interface Summary table, listing interfaces, and an explanation">
<caption>
<span>接口摘要</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">接口</th>
<th class="colLast" scope="col">描述</th>
</tr>
</tbody>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="../../../../javax/security/auth/spi/LoginModule.html" title="interface in javax.security.auth.spi">LoginModule</a></td>
<td class="colLast">
<div class="block">
<code>LoginModule</code>描述了认证技术提供商实现的接口。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul>
<a name="package.description">
<!-- --> </a>
<h2 title="Package javax.security.auth.spi Description">Package javax.security.auth.spi Description</h2>
<div class="block">
该包提供了用于实现可插拔认证模块的接口。
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
JDK1.4
</dd>
</dl>
</div>