JAAS 和 Kerberos

从 2.0 版本开始,添加了 KafkaJaasLoginModuleInitializer 类来帮助配置 Kerberos。您可以将此 bean(以及所需的配置)添加到您的应用程序上下文中。以下示例配置了这样一个 bean

@Bean
public KafkaJaasLoginModuleInitializer jaasConfig() throws IOException {
    KafkaJaasLoginModuleInitializer jaasConfig = new KafkaJaasLoginModuleInitializer();
    jaasConfig.setControlFlag("REQUIRED");
    Map<String, String> options = new HashMap<>();
    options.put("useKeyTab", "true");
    options.put("storeKey", "true");
    options.put("keyTab", "/etc/security/keytabs/kafka_client.keytab");
    options.put("principal", "[email protected]");
    jaasConfig.setOptions(options);
    return jaasConfig;
}