SAP, IIS и SSO - Kerberos SSPI не может использоваться с этой учетной записью пользователя - PullRequest
1 голос
/ 03 сентября 2011

Моя цель - позволить учетным данным пользователя в интрасети проходить через веб-страницу asp.net в SAP RFC.

Фон
У нас есть настройка SAP SSO с нашей системой AD.Пользователи могут открыть графический интерфейс SAP и войти в систему, не вводя имя пользователя / пароль.

Мы используем ERPConnect для вызова RFC в SAP.Если мы введем учетные данные в строку подключения, это будет прекрасно работать.Мы также можем использовать следующий код для использования единого входа, если веб-страница запущена на нашей локальной машине.

Dim db As New SAPContext("ashost=sapsandbox.xxxsap.ad.xxx.com snc_mode=1 sysnr=00 SNC_QOP=9 snc_partnername=p:SAPUserAccount@xxxSAP.AD.XXX.COM SNC_LIB=C:\windows\system32\gsskrb5.dll")

Когда мы переходим на сервер Windows 2003, работающий под управлением IIS6, мы получаемследующая ошибка.

SAP_CMINIT3 : rc=20 > Connect to SAP gateway failed
Connect_PM  GWHOST=sapsandbox.xxxsap.ad.xxx.com, GWSERV=sapgw00, SYSNR=00

LOCATION    CPIC (TCP/IP) on local host
ERROR       GSS-API(maj): Miscellaneous Failure
           GSS-API(min): Kerberos SSPI not usable with this User account
           STOP! -- initial call to gss_indicate_mechs() failed
TIME        Fri Sep 02 14:13:47 201
RELEASE     710
COMPONENT   SNC (Secure Network Communication)
VERSION     5
RC          -1
MODULE      sncxxdl.c
LINE

Я отключил анонимный доступ на моем сайте IIS6.Я также следовал этой статье о том, как включить аутентификацию kerberos на IIS6.

Кто-нибудь знает, как заставить это работать?Мы могли бы перейти на IIS7, если есть более простой способ заставить его работать с этим.

EDIT
Я установил <identity impersonate="true" /> и теперь получаю новую ошибку.

SAP_CMINIT3 : rc=20 > Connect to SAP gateway failed
Connect_PM  GWHOST=sapsandbox.xxxsap.ad.xxx.com, GWSERV=sapgw00, SYSNR=00

LOCATION    CPIC (TCP/IP) on local host
ERROR       GSS-API(maj): Miscellaneous Failure
           GSS-API(min): SSPI::AcqCredHdl(INI)==No credentials available
           in secur
           Could't acquire DEFAULT INITIATING credentials
TIME        Tue Sep 06 11:45:11 201
RELEASE     710
COMPONENT   SNC (Secure Network Communication)
VERSION     5
RC          -4
MODULE      snc

РЕДАКТИРОВАТЬ
Я думаю, мне нужно настроить AD для использования SPN.Вот что я увидел на этом вопросе .
Настройка имени участника-службы в вашей учетной записи пула приложений для внешнего приложения

1 Ответ

2 голосов
/ 06 сентября 2011

Не знаком с SAP, но делегирование является ключевым здесь, в дополнение к SPN, AD должен доверять машине, отправляющей билет Kerberos, я настоятельно рекомендую прочитать эту статью:

Понимание Kerberos Double Hop

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