Spec-Zone .ru
спецификации, руководства, описания, API
|
Версия 5 Kerberos используется для обоих аутентификация и безопасные коммуникационные аспекты приложений клиента и сервера, разработанных в этом учебном руководстве. Читатель, как предполагается, уже знаком с Kerberos. См.
Платформа JAAS, и механизм Kerberos, требуемый методами GSS-API Java, встраиваются в версию 1.4 и позже JREs от всех поставщиков. (JAAS был доступен как отдельно загружаемый дополнительный пакет, запускающийся в версии 1.3.) Kerberos LoginModule, требуемый для аутентификации JAAS в этом учебном руководстве, возможно, не доступен в JREs всех поставщиков. Мы будем использовать LoginModule для Kerberos, обеспеченного в JRE от Sun Microsystems (версии 1.4 и позже).
Чтобы выполнить примеры программ, Вы будете нуждаться в доступе к установке Kerberos. Как описано в следующих разделах, Вам, возможно, также понадобится a krb5.conf
Конфигурационный файл Kerberos и индикация как, туда, где тот файл располагается.
Как со всеми установками Kerberos, требуется Центр распределения ключей Kerberos (KDC). Это должно содержать имя пользователя и пароль, который Вы будете использовать, чтобы аутентифицироваться к Kerberos. Отметьте: реализация KDC является частью установки Kerberos и не частью JRE v 1.4 и позже.
Как с большинством установок Kerberos, конфигурационным файлом Kerberos krb5.conf
консультируется, чтобы определить такие вещи как область значения по умолчанию и KDC. Если Вы используете реализацию Kerberos, такую как это от Microsoft для Windows 2000, которые не включают a krb5.conf
файл, Вы должны будете или создать один или использовать системные свойства как описано в Установке Свойств, чтобы Указать на Область Значения по умолчанию и KDC.
Как правило, область значения по умолчанию и KDC для той области обозначаются в Kerberos krb5.conf
конфигурационный файл. Однако, если Вам нравится, можно вместо этого определить эти значения, устанавливая следующие системные свойства, чтобы указать на область и KDC, соответственно:
java.security.krb5.realm
java.security.krb5.kdc
Если Вы устанавливаете одно из этих свойств, следует установить их обоих.
Также отметьте, что, если Вы устанавливаете эти свойства, тогда никакая аутентификация перекрестной области не возможна если a krb5.conf
файл также обеспечивается, из которого может быть получена дополнительная информация, требуемая для аутентификации перекрестной области.
Если Вы устанавливаете значения для этих свойств, то они переопределяют область значения по умолчанию и значения KDC, определенные в krb5.conf
(если такой файл находится). krb5.conf
с файлом все еще консультируются, если значения для элементов кроме области значения по умолчанию и KDC необходимы. Если нет krb5.conf
файл находится, тогда значения по умолчанию, используемые для этих элементов, специфичны для реализации.
krb5.conf
Конфигурационный файлСущественной конфигурационной информацией Kerberos является область значения по умолчанию и значение по умолчанию KDC. Как показано в Установке Свойств, чтобы Указать на Область Значения по умолчанию и KDC, если Вы устанавливаете свойства, чтобы указать на эти значения, они не получаются из a krb5.conf
конфигурационный файл.
Если у этих свойств нет набора значений, или если другая конфигурационная информация Kerberos необходима, попытка предпринимается, чтобы найти запрошенную информацию в a krb5.conf
файл. Алгоритм, чтобы расположиться krb5.conf
файл является следующим:
Если системное свойство java.security.krb5.conf
устанавливается, его значение, как предполагается, определяет путь и имя файла.
Если то системное значение свойства не устанавливается, то конфигурационный файл разыскивается в каталоге
<java-home>\lib\security
(Windows)<java-home>/lib/security
(Солярис и Linux)Здесь <java-home> ссылается на каталог, где JRE был установлен. Например, если у Вас есть J2SE 5.0 установленный на Солярисе в названном каталоге /j2sdk1.5
, каталог, в котором разыскивается конфигурационный файл:
/j2sdk1.5/jre/lib/security
Если файл все еще не находится, то попытка предпринимается, чтобы определить местоположение его следующим образом:
/etc/krb5/krb5.conf
(Солярис)c:\winnt\krb5.ini
(Windows)/etc/krb5.conf
(Linux)Если файл все еще не находится, и разыскиваемой конфигурационной информацией не является область значения по умолчанию и KDC, то специфичные для реализации значения по умолчанию используются. Если с другой стороны разыскиваемой конфигурационной информацией является область значения по умолчанию и KDC, потому что они не были определены в системных свойствах, и krb5.conf
файл не находится также, затем исключение выдается.
Имена узлов являются нечувствительными к регистру, и условно они - весь нижний регистр. Они должны решить к тому же самому имени узла на клиенте и сервере их соответствующими службами именования.
Однако, в именах узлов базы данных Kerberos являются чувствительными к регистру. Во всех основанных на узле принципалах службы Kerberos в KDC имена узлов являются чувствительными к регистру. Имена узлов, используемые на имена принципала службы Kerberos, должны точно соответствовать имена узлов, возвращенные службой именования. Например, если служба именования возвращается, полностью определенный печатал строчными литерами имя узла DNS, такой как"raven.example.com
", тогда администратор должен использовать полностью определенное то же самое, печатал строчными литерами имя узла DNS, создавая основанные на узле основные имена в KDC:"host/raven.example.com
".
В Kerberos аутентификация перекрестной области реализуется, совместно используя ключ шифрования между двумя областями. KDCs в двух различных областях совместно используют специальный секрет перекрестной области; этот секрет используется, чтобы удостоверить личность, пересекая границу между областями.
Ключ, который совместно используется, является ключом принципала Службы выдачи билетов. Вот типичный принципал Службы выдачи билетов для единственной области:
ktbtgt/EXAMPLE.COM@EXAMPLE.COMВ перекрестной аутентификации области два принципала создаются на каждой участвующей области. Для двух областей,
ENG.EAST.EXAMPLE.COM
и SALES.WEST.EXAMPLE.COM
, эти принципалы были бы: krbtgt/ENG.EAST.EXAMPLE.COM@SALES.WEST.EXAMPLE.COM krbtgt/SALES.WEST.EXAMPLE.COM@ENG.EAST.EXAMPLE.COMЭти принципалы, известные как удаленные принципалы Сервера Выдачи билетов, должны быть созданы на обеих областях.
На Windows 2000 KDC, krbtgt
учетная запись создается автоматически, когда домен Windows 2000 создается. Эта учетная запись не может быть удалена и переименована.
[capaths]
раздел в конфигурационном файле Kerberos определяет серию путей аутентификации, используемых для переходной аутентификации перекрестной области. Клиентское использование [capaths]
определить корректный путь для того, чтобы сделать переходную аутентификацию перекрестной области. Серверы приложений проверяют [capaths]
раздел, чтобы определить, допустим ли путь аутентификации перекрестной области.
Например, чтобы установить перекрестную аутентификацию области между ENG.EAST.EXAMPLE.COM
и SALES.WEST.EXAMPLE.COM
, krb5.conf
должен включать следующую запись:
[capaths] ENG.EAST.EXAMPLE.COM = { SALES.WEST.EXAMPLE.COM = . } SALES.WEST.EXAMPLE.COM = { ENG.EAST.EXAMPLE.COM = . }На Windows 2000 следует установить доверительные отношения между этими двумя областями. Для деталей конфигурации сошлитесь на