Администрирование Lotus Notes 4.1x и Lotus Domino 4.5

Создание взаимных сертификатов


Взаимный сертификат (cross certificate) - документ, создаваемый иерархическим сертификатором, пользователем или сервером из одного дерева имен для иерархического сертификатора, пользователя или сервера из другого дерева имен. Документ необходим для того, чтобы в ходе выполнения процедуры аутентификации (8.3.2) удалось определить публичные ключи устанавливающих соединение сторон. Если же определить публичные ключи не удается, процедура аутентификации заканчивается неуспехом, в результате чего стороны обычно не предоставляют друг другу доступа.

Взаимный сертификат создается и хранится в адресной книге. Он называется "взаимным" потому, что и другая сторона симметрично должна создать и хранить в своей адресной книге взаимный сертификат для первой стороны. В процессе выполнения процедуры аутентификации каждая из сторон всегда использует взаимный сертификат из своей локальной адресной книги.

Рис.  8.29  Деревья имен компаний Acme и Omega

Для того чтобы создать взаимный сертификат, необходимо иметь имя и публичный ключ того субъекта (сертификатора, пользователя или сервера), для которого взаимный сертификат создается. Обычно источником имени и публичного ключа служит безопасная копия ID-файла этого субъекта. В ней содержится иерархический сертификат, который состоит из цепочки сертификатов-компонент, выданных сертификаторами из дерева имен организации, предоставившей безопасную копию. Следовательно, вам доступны как имя и публичный ключ самого субъекта, так и имена и публичные ключи всех его сертификаторов. И за вами право выбирать, для кого из них выпустить взаимный сертификат. Например, вы представляете компанию Omega, и вам была предоставлена безопасная копия ID-файла Alice/Sales/Acme. Если вы выпустите взаимный сертификат на Alice/Sales/Acme, ваша сторона в ходе процедуры аутентификации сможет определить только публичный ключ Alice/Sales/Acme. Если вы выпустите взаимный сертификат на /Sales/Acme, ваша сторона в ходе процедуры аутентификации сможет определить публичные ключи всех, кто в дереве имен ниже /Sales/Acme


(это SERVER1/Sales/Acme,

Alice/Sales/Acme, Bob/Sales/Acme и любые другие, кто появится там позже). Если вы выпустите взаимный сертификат на /Acme, ваша сторона в ходе процедуры аутентификации сможет определить публичные ключи всех, кто в дереве имен ниже /Acme (это все, как настоящие, так и будущие пользователи и серверы компании Acme).

Следующий вопрос - от чьего имени выпускать взаимный сертификат. Если вы просто пользователь, сертификат можно выпустить только от вашего имени. Тогда этим сертификатом сможет воспользоваться только ваша станция и никто другой более. Аналогично администратор сервера может выпустить взаимный сертификат от имени сервера. Тогда им сможет воспользоваться только этот сервер и никто другой. Если вы имеете ID-файл сертификатора, сертификат можно выпустить от его имени. Тогда этим сертификатом сможет воспользоваться любой пользователь или сервер, который в дереве имен вашей организации ниже выпустившего сертификат сертификатора. Единственная тонкость - сервер или станция всегда обращается за взаимным сертификатом к локальной адресной книге. Для сервера это общая адресная книга, для станции - персональная. Поэтому взаимный сертификат, выпущенный от имени сертификатора, обычно вначале помещают в общую адресную книгу, а затем копируют в персональные адресные книги тех пользователей, которым он действительно нужен. Если в нашем примере вы выпускаете взаимный сертификат от имени John/Marketing/Omega, им может воспользоваться только станция John/Marketing/Omega. Если вы выпускаете взаимный сертификат от имени /Marketing/Omega, им смогут воспользоваться все, кто в дереве имен ниже /Marketing/Omega (в нашем примере пока только John/Marketing/Omega и Mary/Marketing/Omega). Если вы выпускаете взаимный сертификат от имени /Omega, им смогут воспользоваться все, кто в дереве имен ниже /Omega (в данном примере пока только

John/Marketing/Omega, Mary/Marketing/Omega и SERVER3/Marketing/Omega).

Рассмотрим все возможные варианты

взаимного сертификата, которые вы, как представитель компании Omega, могли бы выпустить.





·        От имени John/Marketing/Omega для Alice/Sales/Acme

- позволяет только станции John/Marketing/ Omega определять публичный ключ станции Alice/Sales/Acme. С точки зрения установления соединений совершенно бесполезен, поскольку станция не может соединяться со станцией. Однако может использоваться для того, чтобы станция John/Marketing/Omega могла проверять "электронную подпись" Alice/Sales/Acme.

·        От имени John/Marketing/Omega для /Sales/Acme

- позволяет только станции John/Marketing/Omega определять публичный ключ любого из дерева имен компании Acme ниже /Sales/Acme. С точки зрения установления соединений представляет интерес для John/Marketing/Omega потому, что может обеспечить ему доступ к серверу SERVER1/Sales/Acme

(если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений).

·        От имени John/Marketing/Omega для /Acme

- позволяет только станции John/Marketing/Omega определять публичный ключ любого из дерева имен компании Acme. С точки зрения установления соединений представляет интерес для John/Marketing/Omega потому, что может обеспечить ему доступ к серверам SERVER1/Sales/Acme и SERVER2/Development/Acme

(если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений).

·        От имени /Marketing/Omega для Alice/Sales/Acme

- позволяет станциям John/Marketing/Omega и Mary/Marketing/Omega определять публичный ключ станции Alice/Sales/Acme. С точки зрения установления соединений совершенно бесполезен, поскольку станция не может соединяться со станцией. Может использоваться для того, чтобы станции John/Marketing/Omega и Mary/Marketing/Omega могли проверять "электронную подпись" Alice/Sales/Acme.

·        От имени /Marketing/Omega для /Sales/Acme

- позволяет станциям John/Marketing/Omega и Mary/Marketing/Omega определять публичный ключ любого из дерева имен компании Acme ниже /Sales/Acme. С точки зрения установления соединений представляет интерес для John/Marketing/Omega и Mary/Marketing/Omega потому, что может обеспечить им доступ к серверу SERVER1/Sales/Acme (если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений).



·        От имени /Marketing/Omega для /Acme

- позволяет станциям John/Marketing/Omega и Mary/Marketing/ Omega определять публичный ключ любого из дерева имен компании Acme. С точки зрения установления соединений представляет интерес для John/Marketing/Omega и Mary/Marketing/Omega потому, что может обеспечить им доступ к серверам SERVER1/Sales/Acme и SERVER2/Development/Acme

(если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений).

·        От имени /Omega для Alice/Sales/Acme - позволяет всем из компании Omega определять публичный ключ станции Alice/Sales/Acme. С точки зрения установления соединений представляет интерес для Alice/Sales/Acme

потому, что может обеспечить ей доступ к серверу SERVER3/Omega

(если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений).

·        От имени /Omega для /Sales/Acme - позволяет всем из компании Omega определять публичный ключ любого из дерева имен компании Acme ниже /Sales/Acme. С точки зрения установления соединений представляет интерес для John/Marketing/Omega и Mary/Marketing/Omega потому, что может обеспечить им доступ к серверу SERVER1/Sales/Acme (если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений). С той же точки зрения представляет интерес для Alice/Sales/Acme, Bob/Sales/Acme

и SERVER1/Sales/Acme

потому, что может обеспечить им доступ к серверу SERVER3/Omega

(если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений).

·        От имени /Omega для /Acme - позволяет всем из компании Omega определять публичный ключ любого из дерева имен компании Acme. С точки зрения установления соединений представляет интерес для всех пользователей и серверов из обеих компаний, поскольку может обеспечить им доступ к серверам в другой компании (если на другой стороне тоже имеется необходимый взаимный сертификат и нет иных ограничений).



Однако мы рассмотрели только одну половину вопроса. Чтобы процедура аутентификации при установлении соединений завершалась успешно, в компании Acme "зеркально симметрично" тоже должен быть выпущен хотя бы один взаимный сертификат от имени кого-то из компании Acme для кого-то из компании Omega. И вариантов здесь будет не меньше, чем было рассмотрено для компании Omega.

Далее можно было бы рассмотреть всевозможные пары из возможных взаимных сертификатов двух компаний. Ограничимся лишь несколькими вариантами.

·        Omega: от имени John/Marketing/Omega для /Sales/Acme.

Acme: от имени SERVER1/Sales/Acme

для John/Marketing/Omega.

Позволяет только John/Marketing/Omega иметь доступ только к серверу SERVER1/Sales/Acme. Если в Acme

появится сервер с именем SERVER4/Sales/Acme, John/Marketing/Omega не будет иметь к нему доступа.

·        Omega: от имени John/Marketing/Omega для /Sales/Acme.

Acme: от имени /Sales/Acme

для John/Marketing/Omega.

Позволяет только John/Marketing/Omega иметь доступ только к серверу SERVER1/Sales/Acme. Если в Acme

появится сервер с именем SERVER4/Sales/Acme, John/Marketing/Omega тоже будет иметь к нему доступ.

·        Omega: от имени /Marketing/Omega для /Sales/Acme.

Acme: от имени /Sales/Acme

для /Marketing/Omega.

Позволяет только John/Marketing/Omega и Mary/Marketing/Omega иметь доступ только к серверу SERVER1/Sales/Acme. Если в Acme

появится сервер с именем SERVER4/Sales/Acme, John и Mary

тоже будет иметь к нему доступ. Если в Omega появится сервер с именем SERVER5/Marketing/Omega, он будет иметь доступ к серверу SERVER1/Sales/Acme. С другой стороны Alice, Bob и SERVER1 тоже будут иметь доступ к SERVER5/Marketing/Omega.

·        Omega: от имени /Omega для /Acme.

Acme: от имени /Acme

для /Omega.

Все пользователи и серверы одной компании имеют доступ ко всем серверам в другой компании. Все новые пользователи и серверы так же автоматически обладают таким доступом.


Содержание раздела