Как передать билеты Kerberos через сервер Apache в фоновые сервисы - PullRequest
0 голосов
/ 09 сентября 2018

У меня есть пара сервисов, работающих как API, которые вызываются моими веб-действиями. На данный момент в API нет аутентификации, но используется идентификатор пользователя, получаемый через SSO из моего веб-приложения. Теперь я планирую использовать аутентификацию Kerberos даже для API, для которых, как я предполагаю, мне нужно будет отправить (или делегировать) билет Kerberos моим внутренним службам.

Я использую Apache Server 2.4.6, настроенный для получения пользователем mod_auth_kerb с указанными ниже конфигурациями

<Location /my-web-site>
AuthType Kerberos  
RequestHeader set X-Remote-User "%{REMOTE_USER}s" env=REMOTE_USER
RequestHeader set X-Auth-User "%{AUTH_USER}s" env=AUTH_USER
RewriteEngine On
RewriteCond %{LA-U:REMOTE_USER} (.+)
RewriteRule .* - [E=RU:%{LA-U:REMOTE_USER},NS]
RequestHeader set X-Remote-User "%{RU}e" env=RU
RequestHeader set Remote-User "%{RU}e" env=RU
Header set Remote-User "%{RU}e" env=RU
AuthName "Kerberos Login"
KrbMethodNegotiate on
KrbMethodK5Passwd on
KrbLocalUserMapping off
KrbAuthRealms MY.REALM.COM
KrbServiceName Any
Krb5KeyTab /path/to/my-keytab
require valid-user
</Location>

Любые указатели будут высоко оценены.

...