|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object javax.security.sasl.Sasl
public class Sasl
用於創建 SASL 客戶端和伺服器的靜態類別。
此類別定義了如何尋找、載入和實例化 SASL 客戶端和伺服器的策略。
例如,通過執行以下操作,應用程序或資源庫可獲得 SASL 客戶端:
然後該程序可繼續使用該實例來創建驗證連接。SaslClient sc = Sasl.createSaslClient(mechanisms, authorizationId, protocol, serverName, props, callbackHandler);
類似地,伺服器可使用下列程式碼來獲得 SASL 伺服器:
SaslServer ss = Sasl.createSaslServer(mechanism, protocol, serverName, props, callbackHandler);
欄位摘要 | |
---|---|
static String |
CREDENTIALS
屬性的名稱,它指定要使用的證書。 |
static String |
MAX_BUFFER
屬性名,指定 SaslClient/SaslServer 接收緩衝區的最大大小(以位元組為單位)。 |
static String |
POLICY_FORWARD_SECRECY
屬性名,指定是否需要在Session間實作了轉發安全性的機制。 |
static String |
POLICY_NOACTIVE
屬性名,指定是否允許易受主動式攻擊(非字典)的機制。 |
static String |
POLICY_NOANONYMOUS
屬性名,指定是否允許接受匿名登錄的機制。 |
static String |
POLICY_NODICTIONARY
屬性名,指定是否允許易受被動式字典攻擊的機制。 |
static String |
POLICY_NOPLAINTEXT
屬性名,指定是否允許易受簡單被動式攻擊(例如 "PLAIN")的機制。 |
static String |
POLICY_PASS_CREDENTIALS
屬性名,指定是否需要傳遞客戶端證書的機制。 |
static String |
QOP
屬性名,指定要使用的保護級別。 |
static String |
RAW_SEND_SIZE
屬性名,指定 SaslClient/SaslServer 初始發送緩衝區的最大大小(以位元組為單位)。 |
static String |
REUSE
屬性名,指定是否重用以前已驗證過的Session資訊。 |
static String |
SERVER_AUTH
屬性名,指定伺服器是否必須驗證客戶端。 |
static String |
STRENGTH
屬性名,指定要使用的密碼強度。 |
方法摘要 | |
---|---|
static SaslClient |
createSaslClient(String[] mechanisms,
String authorizationId,
String protocol,
String serverName,
Map<String,?> props,
CallbackHandler cbh)
使用提供的參數創建 SaslClient。 |
static SaslServer |
createSaslServer(String mechanism,
String protocol,
String serverName,
Map<String,?> props,
CallbackHandler cbh)
為指定機制創建一個 SaslServer。 |
static Enumeration<SaslClientFactory> |
getSaslClientFactories()
獲得用於產生 SaslClient 的已知處理器的列舉。 |
static Enumeration<SaslServerFactory> |
getSaslServerFactories()
獲得用於產生 SaslServer 的已知處理器的列舉。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
欄位詳細資訊 |
---|
public static final String QOP
public static final String STRENGTH
public static final String SERVER_AUTH
public static final String MAX_BUFFER
public static final String RAW_SEND_SIZE
public static final String REUSE
public static final String POLICY_NOPLAINTEXT
public static final String POLICY_NOACTIVE
public static final String POLICY_NODICTIONARY
public static final String POLICY_NOANONYMOUS
public static final String POLICY_FORWARD_SECRECY
public static final String POLICY_PASS_CREDENTIALS
public static final String CREDENTIALS
方法詳細資訊 |
---|
public static SaslClient createSaslClient(String[] mechanisms, String authorizationId, String protocol, String serverName, Map<String,?> props, CallbackHandler cbh) throws SaslException
SaslClientFactory 的安全提供者向 JCA Security Provider Framework 註冊以下形式的鍵:
SaslClientFactory.機制名
和值(即 javax.security.sasl.SaslClientFactory 實作的類別名)。
例如,一個套件含處理器類別 com.wiz.sasl.digest.ClientFactory(支持 "DIGEST-MD5" 機制)的提供者將向 JCA 註冊以下項:SaslClientFactory.DIGEST-MD5 com.wiz.sasl.digest.ClientFactory
有關如何安裝和配置安全服務提供者的資訊,請參閱 "Java Cryptography Architecture API Specification & Reference"。
mechanisms
- 要試用的機制名的非 null 列表。每個名稱都是 SASL 機制的 IANA 註冊名。(例如 "GSSAPI"、"CRAM-MD5")。authorizationId
- 與協議有關可能為 null 的用於授權的標識。如果為 null 或空,則伺服器根據客戶端的驗證證書派生出一個授權 ID。SASL 驗證成功完成後,就允許指定的實體存取。protocol
- 非 null 的協議(例如 "ldap")字元串名,將用它執行驗證。serverName
- 伺服器的非 null 完全限定主機名,要向該伺服器進行驗證。props
- 可能為 null 的屬性集,用於選擇 SASL 機制並配置所選機制的驗證交換。例如,如果 props 套件含 Sasl.POLICY_NOPLAINTEXT
屬性,且屬性值為 "true",則所選的 SASL 機制必須不易受到簡單被動式攻擊的影響。除了在此類別中所宣告的標準屬性外,也可以包括其他的可能特定於機制的屬性。忽略與所選機制無關的屬性,包括帶有非字元串關鍵字的所有映射項。cbh
- SASL 機制使用的回調處理程序(可能為 null),以便為完成驗證而從應用程序/資源庫獲得更多的資訊。例如,SASL 機制可能需要從調用者獲得驗證 ID、密碼和域。使用 NameCallback 來請求驗證 ID。使用 PasswordCallback 來請求密碼。如果要從域列表中選擇,則使用 RealmChoiceCallback 來請求域,如果必須輸入域,則使用 RealmCallback 來請求域。
SaslException
- 如果因為錯誤而無法創建 SaslClient。public static SaslServer createSaslServer(String mechanism, String protocol, String serverName, Map<String,?> props, CallbackHandler cbh) throws SaslException
SaslServerFactory 的安全提供者向 JCA Security Provider Framework 註冊以下形式的鍵:
SaslServerFactory.機制名
和值(即 javax.security.sasl.SaslServerFactory 實作的類別名)。
例如,一個套件含處理器類別 com.wiz.sasl.digest.ServerFactory(支持 "DIGEST-MD5" 機制)的提供者將向 JCA 註冊以下項: SaslServerFactory.DIGEST-MD5 com.wiz.sasl.digest.ServerFactory
有關如何安裝和配置安全服務提供者的資訊,請參閱 "Java Cryptography Architecture API Specification & Reference"。
mechanism
- 非 null 的機制名。它必須是 SASL 機制的 IANA 註冊名。(例如 "GSSAPI"、"CRAM-MD5")。protocol
- 非 null 的協議(例如 "ldap")字元串名,將為它執行驗證。serverName
- 伺服器的非 null 完全限定主機名。props
- 可能為 null 的屬性集,用於選擇 SASL 機制並配置所選機制的驗證交換。例如,如果 props 套件含 Sasl.POLICY_NOPLAINTEXT
屬性,且屬性值為 "true",則所選的 SASL 機制必須不易受到簡單被動式攻擊的危害。除了在此類別中所宣告的標準屬性外,也可以包括其他的可能特定於機制的屬性。忽略與所選機制無關的屬性,包括帶有非字元串關鍵字的所有映射項。cbh
- SASL 機制使用的回調處理程序(可能為 null),以便為完成驗證而從應用程序/資源庫獲得更多的資訊。例如,SASL 機制可能需要從調用者獲得驗證 ID、密碼和域。使用 NameCallback 來請求驗證 ID。使用 PasswordCallback 來請求密碼。如果要從域列表中選擇,則使用 RealmChoiceCallback 來請求域,如果必須輸入域,則使用 RealmCallback 來請求域。
SaslException
- 如果因為錯誤而無法創建 SaslServer。public static Enumeration<SaslClientFactory> getSaslClientFactories()
createSaslClient(java.lang.String[], java.lang.String, java.lang.String, java.lang.String, java.util.Map, javax.security.auth.callback.CallbackHandler)
public static Enumeration<SaslServerFactory> getSaslServerFactories()
createSaslServer(java.lang.String, java.lang.String, java.lang.String, java.util.Map, javax.security.auth.callback.CallbackHandler)
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。