Java11:使用 GSS 的 Kerberos API

Java 11: Kerberos using GSS API

我正在将一个项目升级到 Java 11。我意识到一些内部包如 sun.security.krb5.Config & sun.security.krb5.KrbException 不再 "visible" 由于模块。 下面是代码库如何使用这些包的几个示例:

Exception cause = ExceptionUtils.findCause(ne, KrbException.class);

LoginException le = (LoginException) ne.getCause();
                if (le.getCause() instanceof KrbException) {
                    KrbException ke = (KrbException) le.getCause();

try {
                    sun.security.krb5.Config.refresh();
                } catch (KrbException e) {
//log something
}

我了解到这些内部包应该使用 GSS API 来实现。

我一直在浏览 GSS 类 和教程,但找不到任何关于替换上述内部包的内容。

按原样处理 LoginException。 JAAS 应该从一切中抽象出来。你只是有错误的代码。