インタフェースSaslClientFactory
public interface SaslClientFactory
SaslClientのインスタンスを作成するためのインタフェースです。 このインタフェースは、スレッド・セーフで、複数の要求を同時に処理できるクラスによって実装されます。 このクラスは、引数をとらないpublicコンストラクタを持っている必要があります。
クライアントは、Sasl staticメソッドを使用するため、通常、このインタフェースに直接アクセスすることはありません。 ただし、新しい、または異なるSaslClientFactoryが提供およびインストールされる環境もあります。
- 導入されたバージョン:
- 1.5
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明createSaslClient(String[] mechanisms, String authorizationId, String protocol, String serverName, Map<String, ?> props, CallbackHandler cbh) 指定のパラメータを使用してSaslClientを作成します。String[]getMechanismNames(Map<String, ?> props) 指定されたメカニズム選択ポリシーに一致するメカニズム名の配列を返します。
-
メソッドの詳細
-
createSaslClient
SaslClient createSaslClient(String[] mechanisms, String authorizationId, String protocol, String serverName, Map<String, ?> props, CallbackHandler cbh) throws SaslException指定のパラメータを使用してSaslClientを作成します。- パラメータ:
mechanisms- 試行するメカニズム名のリスト。null以外。 それぞれSASLメカニズムのIANA登録名(「GSSAPI」や「CRAM-MD5」など)になる。authorizationId- 承認に使用されるプロトコル依存の識別情報。nullの場合もある。 nullまたは空の場合、サーバーはクライアントの認証資格から承認IDを得る。 SASL認証に成功すると、指定されたエントリにアクセスが許可される。protocol- 認証対象のプロトコルの文字列名。null以外。ldapなどがある。serverName- 認証情報を要求するサーバーの完全指定のホスト名。null以外。props- SASLメカニズムの選択と、選択されたSASLメカニズムの認証交換の構成を行うためのプロパティのセット。nullの場合もある。 標準プロパティのリストについては、Saslクラスの説明を参照。 メカニズム固有のプロパティなど、標準以外のプロパティも含めることができる。 選択されたメカニズムと関連性のないプロパティ(String形式でないキーを持つマップ・エントリを含む)は無視される。cbh- SASLメカニズムが、認証を完了するためにアプリケーションやライブラリからさらに詳しい情報を取得するときに使用するコールバック・ハンドラ。nullの場合もある。 たとえば、呼出し側の認証ID、パスワードおよびレルムを要求するようなSASLメカニズムがある。 認証IDの要求には、NameCallbackが使用される。 パスワードの要求には、PasswordCallbackが使用される。 レルムの要求には、選択可能なレルムのリストが存在する場合はRealmChoiceCallback、レルムを指定する必要がある場合はRealmCallbackが使用される。- 戻り値:
- 指定されたパラメータを使用して作成された
SaslClient。nullの場合もある。 nullの場合、このファクトリは、指定されたパラメータを使用してSaslClientを作成できない。 - スロー:
SaslException- エラーのためにSaslClientを作成できない場合。
-
getMechanismNames
指定されたメカニズム選択ポリシーに一致するメカニズム名の配列を返します。- パラメータ:
props- SASLメカニズムのセキュリティ・ポリシーの指定に使用されるプロパティのセット。nullの可能性もある。 たとえば、propsに含まれるSasl.POLICY_NOPLAINTEXTプロパティの値がtrueの場合、ファクトリは、単純な受動的攻撃を受けやすいSASLメカニズムを返してはいけない。 ポリシー・プロパティの完全なリストについては、Saslクラスの説明を参照。props内にポリシーと関連性のないプロパティ(String以外のキーを持つマップ・エントリを含む)が存在する場合、無視される。- 戻り値:
- IANAに登録済みのSASLメカニズム名を含むnull以外の配列。
-