-
public interface SaslClientFactory
用于创建SaslClient
实例的SaslClient
。 实现此接口的类必须是线程安全的并且可以处理多个同时发送的请求。 它也必须有一个不接受参数的公共构造函数。这个接口通常不被客户端直接访问,这将使用
Sasl
静态方法。 但是,特定环境可能会提供和安装新的或不同的SaslClientFactory
。- 从以下版本开始:
- 1.5
- 另请参见:
-
SaslClient
,Sasl
-
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 SaslClient
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
- 要尝试的机制名称的非空列表。 每个都是SASA机制的IANA注册名称。 (例如“GSSAPI”,“CRAM-MD5”)。 -
authorizationId
- 用于授权的可能无效的协议相关标识。 如果为空或为空,则服务器从客户端的身份验证凭据中导出授权标识。 当SASL认证成功完成时,指定的实体被授予访问权限。 -
protocol
- 正在执行身份验证的协议的非空字符串名称(例如,“ldap”)。 -
serverName
- 要验证的服务器的非空标准主机名。 -
props
- 用于选择SASL机制并配置所选机制的认证交换的可能的props
。 有关标准属性的列表,请参阅Sasl
类。 可以包括其他可能机制特定的属性。 与所选机制无关的属性将被忽略,包括具有非String键的任何地图条目。 -
cbh
- SASL机制使用的可能的空回调处理程序,以从应用程序/库获取进一步的信息来完成身份验证。 例如,SASL机制可能需要来自呼叫者的身份验证ID,密码和领域。 使用NameCallback
请求认证ID。 使用PasswordCallback
请求密码。 该领域是通过使用要求RealmChoiceCallback
,如果有选择,领域列表,并通过使用RealmCallback
如果必须输入领域。 - 结果
-
使用提供的参数创建可能为空的
SaslClient
。 如果为null,则此工厂不能使用提供的参数生成SaslClient
。 - 异常
-
SaslException
- 如果由于错误而无法创建SaslClient
。
-
-