Большую часть времени я провожу разработчиком, поэтому не знаю всех деталей ...
У меня есть служба, работающая на хосте Linux. Я хочу использовать Kerberos для передачи идентификационной информации службе. Некоторые из моих клиентов используют клиенты Windows, подключенные к AD, поэтому у них уже есть билет. Я понимаю, как использовать kinit для получения билета на моих клиентах * nix, и подтвердил, что могу это сделать. У меня есть файл /etc/krb5.conf, который, похоже, работает на моих * nix-клиентах.
Я понимаю, что мне нужно сделать следующее ...
Вот моя проблема ...
SPN обычно имеет форму service_name / FQDN @ domain_name. Однако мои клиенты не создают SPN, используя имя хоста службы. Вместо этого SPN устанавливается в файле конфигурации. Для меня было бы проще, если бы я мог создать одно SPN и использовать его на каждом экземпляре моего сервера.
Итак, я бы сделал следующее ...
Я думаю, что это сработает, поскольку один и тот же SPN / keytab может использоваться на нескольких серверах с разными именами хостов, когда серверы кластеризованы.
Вкратце - является ли полное доменное имя частью имени участника-службы важной для сервера или оно существует только для того, чтобы типичные клиенты могли генерировать правильное имя участника-службы? Если несколько серверов имеют одну и ту же вкладку ключей, могут ли они получать и проверять одни и те же токены, или требуется что-то еще?
Подчеркну, что сервис - это java-приложение для Linux, клиенты - java-приложения для Windows и * nix. AD предоставит инфраструктуру сервера Kerberos.
В случае, если вы обрисовываете в общих чертах, это должно работать. Вы можете использовать keytab на нескольких машинах, если у всех клиентов есть способ выяснить, для какого принципала службы запрашивать ключ службы. Kerberos требует, чтобы обе стороны соединения определили принципала службы с помощью некоторых внешних средств. Обычно это соглашение, основанное на DNS-имени сервера, но в Kerberos нет ничего, что требует этого.
Я бы сказал, что это разумное решение, если количество серверов "невелико" и нет требований безопасности для регулярной ротации keytab.