Эксперт-Клуб

Наш подписчик, Виктор Балабай:

1Вопрос:

SAP SNC-адаптер останавливает рабочие процессы ядра 710 с диагностическим сообщением:

N        GSS-API(maj): The specified authentication mechanism is unsupported.

Аналогичная ситуация описана в сообщении в SDN с такими же симптомами https://forums.sme.sap.com/message.jspa?messageID=8613262. Ответа на сообщение в SDN нет..

Ответ

Наш эксперт, консультант–фрилансер Михаил Прусов

 

Вне зависимости от результатов анализа я хотел бы отметить, что используемая библиотека не будет поддерживаться ни компанией SAP AG, ни сторонним поставщиком программного обеспечения. Тем не менее, есть вероятность, что решение будет работать стабильно.

1. Попробуйте обновить ядро SAP. Незначительная вероятность того, что ядро "кривое" имеется.

2. Увеличьте уровень трассировки рабочих процессов SAP, чтобы получить более детальную информацию об ошибки и ее контекст. Для этого используйте параметр системы rdisp/TRACE. Для тестирования можно использовать значение 2 или даже 3.

3. Дайте более детальную информацию об используемом SNC-адаптере. На основе чего собирали, какая операционная система, используемая версия клиента Kerberos.

4. Дайте протоколы работы gsstest на проблемном сервере с максимальной детализацией.

5. Уточните, пожалуйста, в соответствие с какими руководствами выполнялась настройка интеграции Kerberos и Microsoft AD. 

6. Попробуйте вместо «обертки» использовать библиотеку Kerberos-клиента.

 

 

 

Автор вопроса сообщил: 

Ядро обновили. Результат остался прежним. Увеличили трассировку ядра. Результат ниже:

 

M  DlLoadFunc (sapgss_export_name) from /usr/lib/hpux64/snckrb5.sl

N    File "/usr/lib/hpux64/snckrb5.sl" dynamically loaded as external SNC-Adapter.

N    The SNC-Adapter identifies as:

N    External SNC-Adapter (Rev 1.0) to Kerberos 5/GSS-API v2

N  *** ERROR => SncPDLInit(): gss_indicate_mechs() failed [sncxxdl.c  493]

N  *** ERROR => SncPDLInit(()==SNCERR_INIT  [sncxxdl.c 488]

N        GSS-API(maj): The specified authentication mechanism is unsupported.

N      STOP! -- initial call to gss_indicate_mechs() failed

N  *** ERROR => SncPDLInit()==SNCERR_INIT, Adapter #1 (/usr/lib/hpux64/snckrb5.sl) not loaded [sncxxdl.c  639]

M  DlUnloadLib shared library ("/usr/lib/hpux64/snckrb5.sl"), hdl 2

N  <<- SncInit()==SNCERR_INIT

N           sec_avail = "false"

M  ***LOG R19=> ThSncInit, SncInitU ( SNC-000001) [thxxsnc.c    234]

M  *** ERROR => ThSncInit: SncInitU (SNCERR_INIT) [thxxsnc.c    237]

M  in_ThErrHandle: 1

M  *** ERROR => SncInitU (step 1, th_errno 44, action 3, level 1) [thxxhead.c   11091]

 

Использование библиотеки Kerberos-клиента также приводит к ошибке, но с другой диагностикой.

M  DlLoadFunc (gss_export_name) from /opt/krb5core/lib/hpux64/gss/libgssapi_krb5.so.1

N    File "/opt/krb5core/lib/hpux64/gss/libgssapi_krb5.so.1" dynamically loaded as GSS-API v2 library.

N    The internal Adapter for the loaded GSS-API mechanism identifies as:

N    Internal SNC-Adapter (Rev 1.0) to Kerberos 5/GSS-API v2

N  *** ERROR => SncPGSSImportName()==SNCERR_GSSAPI  [sncxxall.c 2630]

N        GSS-API(maj): An invalid name was supplied

N        GSS-API(min): Can't open/find configuration file (dce / krb)

N      Import of a name failed

N      name="p:SAPService/rc4hmac@MEGAFON.RU"

N  <<- SncInit()==SNCERR_GSSAPI

N           sec_avail = "false"

M  ***LOG R19=> ThSncInit, SncInitU ( SNC-000004) [thxxsnc.c    234]

M  *** ERROR => ThSncInit: SncInitU (SNCERR_GSSAPI) [thxxsnc.c    237]

M  in_ThErrHandle: 1

M  *** ERROR => SncInitU (step 1, th_errno 44, action 3, level 1) [thxxhead.c   11091]

 

Продолжение ответа:

Различная диагностика при использовании SNC-библиотеки и библиотеки Kerberos-клиента, по-видимому, связана с тем, что в случае  SNC-библиотеки, выполняется инициализация SNC. В ходе инициализации вызывается метод gss_indicate_mechs(), вызов завершается неуспешно, SNC трактует этот неуспех как отсутствие доступных механизмов аутентификации (GSS-API(maj): The specified authentication mechanism is unsupported). В случае использования GSS-библиотеки неуcпешно завершается импорт GSS-имени. Причина может быть одной и той же, - проблема конфигурации Kerberos на данном сервере. Я рекомендую поискать причины проблемы по следующему контексту, но это уже не SAP:

На всякий случай, убедитесь, также что на сервере равно одна библиотека с именем libgssapi_krb5.so.1.

Отзыв:

Спасибо большое! Сервис замечательно работает.
Мы получили очень квалифицированные ответы на вопросы по базису.
Можно даже сказать, что такого уровня консультаций мы практически раньше не получали.