Назначение mapuser в ktpass
Я просто хочу узнать, какова цель сопоставления пользователя с помощью сервиса ktpass
является. Например я на Windows, и я бегу ktpass
как это:
ktpass -out <keytab location> -princ <host/domain.com> -mapUser useraccount@domain.com -mapOp add .........
Когда мы сопоставляем пользователя с -princ
Означает ли это, что только "useraccount" может аутентифицировать сервис? И как мы используем -add
а также -set
вариант? в чем разница?
Моя проблема заключается в следующем: у меня много пользователей, желающих использовать имеющуюся у меня службу и проходить аутентификацию через kerberos (JASS Krb5LoginModule), но я не хочу указывать много имен участников-пользователей в файле jaas.config. Поэтому я подумываю использовать вместо этого SPN и сопоставлять пользователей.
1 ответ
Опция -mapUser useraccount@domain.com указывает ktpass сохранять "принципал" в атрибуте userPrincipalName этого пользователя в Active Directory, чтобы Active Directory могла найти его, когда клиенты запрашивают KerberosServiceTicket для этого "принципала" и выдают такой билет,
-mapUser указывает имя пользователя, который представляет ваш сервис в Active Directory.
Используя ktpass, вы делаете две вещи: генерируете keytab для вашей службы (чтобы он мог открывать билеты Kerberos, полученные от клиентов, то есть проверять их подлинность) и регистрируете принципала в Active Directory (чтобы клиенты могли вообще получать билеты для службы).
В файле jaas.config вы указываете только одно основное имя (для службы), а не для клиентов. Как только пользователь входит в домен Active Directory, он / она имеет право получить сервисный билет для вашего сервиса.