Флаг контроля модуля входа в систему недоступен в конфигурации JAAS - Scala Kafka - PullRequest
0 голосов
/ 03 марта 2020

Проблемы при попытке использовать аутентификацию Kerberos при подключении к Kafka. Использование scala и мой jaas.config выглядит примерно так.

KafkaClient { com.sun.security.auth.module.Krb5LoginModule требуется useKeyTab = TRUE Keytab = "/ и т.д. / безопасность / keytabs / storm.service.keytab" storeKey = TRUE useTicketCache = ложь SERVICENAME = "Кафка" Основные = "storm@EXAMPLE.COM"; отлаживать = True клиент = True; };

Исключение в потоке "главная" организация. apache .kafka.common.KafkaException: Не удалось создать потребителя kafka
в организации. apache .kafka.clients.consumer.KafkaConsumer. (KafkaConsumer. java: 799)
в организации. apache .kafka.clients.consumer.KafkaConsumer. (KafkaConsumer. java: 615)
в организации. apache .kafka.clients.consumer.KafkaConsumer . (KafkaConsumer. java: 596)
в орг. apache .spark. sql .kafka010.SubscribeStrategy.createConsumer (ConsumerStrategy. scala: 62)
в орг. apache. spark. sql .kafka010.KafkaOffsetReader.createConsumer (KafkaOffsetReader. scala: 314)
в организации. apache .spark. sql .kafka010.KafkaOffsetReader. (KafkaOffsetReader. *: 78) * 1034 1012 * в орг. apache .spark. sql .kafka010.KafkaSourceProvider.createContinuousReader (KafkaSourceProvider. scala: 130) в орг. scala: 43)
в орг. apache .spark. sql .streaming.DataStreamReader.load (DataStreamReader. scala: 185) на com.gm.Spar kDataIngest.Main $ .main (Main. scala: 119) на com.gm.SparkDataIngest.Main.main (Main. scala)

Причина: java .lang.IllegalArgumentException: Логин Флаг управления модулем недоступен в конфигурации JAAS
в организации. apache .kafka.common.security.JaasConfig.loginModuleControlFlag (JaasConfig. java: 85) в организации. apache .kafka.common.security .JaasConfig.parseAppConfigurationEntry (JaasConfig. java: 111) в орг. apache .kafka.common.security.JaasConfig. (JaasConfig. java: 63) в орг. apache .kafka.common.security. JaasContext.load (JaasContext. java: 148) в орг. apache .kafka.common.security.JaasContext.loadClientContext (JaasContext. java: 142) в орг. apache .kafka.common.network. ChannelBuilders.create (ChannelBuilders. java: 119) в орг. apache .kafka.common.network.ChannelBuilders.clientChannelBuilder (ChannelBuilders. java: 65) в орг. apache .kafka.clients.ClientUtils. createChannelBuilder (ClientUtils. java: 88) в орг. apache .kafka.clients.consumer.KafkaConsumer. (KafkaConsumer. java: 713)

Ответы [ 2 ]

0 голосов
/ 03 марта 2020

Если ваша конфигурация JAAS действительно соответствует показанной вами, то у вас есть синтаксическая ошибка , в частности, дополнительная точка с запятой ; , которая приводит к сбою синтаксического анализатора, поскольку он находит второй Запись конфигурации, которая не имеет смысла.

Конфигурация JAAS должна быть простой (и обратите внимание, где точка с запятой) ...

Blurb {
  some.login.module.class status
  option1=value1
  option2="value2"
  ;
};

... или сложной (и теперь вы понять, что означают точки с запятой ...

Blurb {
  some.login.module.class status
  option1=value1
  option2="value2"
  ;
  other.login.module.class status
  option3=value3
  ;
};
DahDah {
  some.login.module.class status
  option1=value99
  option2="value88"
  ;
};


Кстати, вы можете переключить анализатор конфигурации JAAS в режиме отладки, установив -Djava.security.debug=configparser

Лично я всегда использую -Dsun.security.krb5.debug=true -Djava.security.debug=gssloginconfig,configfile,configparser,logincontext при устранении неполадок с Kerberos.

0 голосов
/ 03 марта 2020

Я думаю, что проблема может быть вызвана не предоставлением JAAS conf, как это указано в трассировке стека. Способы предоставления конфигурации JAAS:

  • Через свойство клиента: sasl.jaas.config
  • Через свойство Java: java.security.auth.login.config

Для дальнейшей ссылки обратитесь к cloudera blog или confulent blog или question .

Дайте мне знать, если это поможет !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...