所有类


javax.security.sasl
接口 SaslServerFactory


public interface SaslServerFactory

用于创建 SaslServer 实例的接口。实现此接口的类必须是线程安全的,并且可同时处理多个请求。它还必须具有不接受参数的公共构造方法。

服务器通常不直接访问此接口,而是使用 Sasl 静态方法访问此接口。但是,特定的环境可以提供和安装一个新的或不同的 SaslServerFactory

从以下版本开始:
1.5
另请参见:
SaslServer, Sasl

方法摘要
 SaslServer createSaslServer(String mechanism, String protocol, String serverName, Map<String,?> props, CallbackHandler cbh)
          使用提供的参数创建 SaslServer
 String[] getMechanismNames(Map<String,?> props)
          返回与指定的机制选择策略相符的机制的名称数组。
 

方法详细信息

createSaslServer

SaslServer createSaslServer(String mechanism,
                            String protocol,
                            String serverName,
                            Map<String,?> props,
                            CallbackHandler cbh)
                            throws SaslException
使用提供的参数创建 SaslServer。如果无法使用提供的参数创建 SaslServer,则返回 null。如果因为错误而无法创建 SaslServer,则抛出 SaslException

参数:
mechanism - SASL 机制的非 null IANA 注册名。(例如 "GSSAPI"、"CRAM-MD5")。
protocol - 非 null 的协议(例如 "ldap")字符串名,将为它执行身份验证。
serverName - 服务器的非 null 完全限定主机名,要对该服务器进行身份验证。
props - 可能为 null 的属性集,用于选择 SASL 机制并配置所选机制的身份验证交换。有关标准属性的列表,请参阅 Sasl 类。也可包括其他可能特定于机制的属性。忽略与所选机制无关的属性。
cbh - SASL 机制使用的回调处理程序(可能为 null),以便为完成身份验证而从应用程序/库获得更多的信息。例如,SASL 机制可能需要从调用方获得身份验证 ID、密码和领域。使用 NameCallback 来请求身份验证 ID。使用 PasswordCallback 来请求密码。如果要从领域列表中选择,则使用 RealmChoiceCallback 来请求领域,如果必须输入领域,则使用 RealmCallback 来请求领域。
返回:
使用所提供参数创建的 SaslServer,可能为 null。如果为 null,则此工厂无法使用所提供的参数生成 SaslServer
抛出:
SaslException - 如果因为错误而无法创建 SaslServer

getMechanismNames

String[] getMechanismNames(Map<String,?> props)
返回与指定的机制选择策略相符的机制的名称数组。

参数:
props - 可能为 null 的属性集,用于指定 SASL 机制的安全策略。例如,如果 props 包含值为 "true" 的属性 Sasl.POLICY_NOPLAINTEXT,则该工厂必须不返回任何易于受到简单被动式攻击危害的 SASL 机制。有关策略属性的完整列表,请参阅 Sasl 类。如果 props 中有与策略无关的属性,则忽略该属性。
返回:
非 null 的数组,包含 IANA 注册的 SASL 机制名。

所有类

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部