В вычислительной технике служба каталогов или служба имен сопоставляет имена сетевых ресурсов с их соответствующими сетевыми адресами . Это общая информационная инфраструктура для поиска, управления, администрирования и организации повседневных предметов и сетевых ресурсов, которые могут включать тома, папки, файлы, принтеры, пользователей, группы, устройства, телефонные номера и другие объекты. Служба каталогов является критически важным компонентом сетевой операционной системы . Сервер каталогов или сервер имен — это сервер , который предоставляет такую услугу. Каждый ресурс в сети рассматривается сервером каталогов как объект . Информация о конкретном ресурсе хранится в виде набора атрибутов, связанных с этим ресурсом или объектом.
Служба каталогов определяет пространство имен для сети. Пространство имен используется для назначения имени (уникального идентификатора) каждому объекту. Каталоги обычно имеют набор правил, определяющих, как именуются и идентифицируются сетевые ресурсы, что обычно включает требование, чтобы идентификаторы были уникальными и однозначными . При использовании службы каталогов пользователю не нужно помнить физический адрес сетевого ресурса; предоставление имени находит ресурс. Некоторые службы каталогов включают положения об управлении доступом , ограничивая доступность информации каталога для авторизованных пользователей .
Несколько вещей отличают службу каталогов от реляционной базы данных . Данные могут быть сделаны избыточными, если это способствует производительности (например, путем повторения значений в строках таблицы вместо того, чтобы связывать их с содержимым другой таблицы через ключ, что называется денормализацией ; другим методом может быть использование реплик для увеличения фактической пропускной способности). [1]
Схемы каталогов — это классы объектов, атрибуты, привязки имен и знания (пространства имен), где класс объекта имеет:
Атрибуты иногда являются многозначными, что позволяет использовать несколько атрибутов именования на одном уровне (например, объединение типа машины и серийного номера или несколько телефонных номеров для «рабочего телефона»). Атрибуты и классы объектов обычно стандартизированы в отрасли; например, атрибуты и классы X.500 часто официально регистрируются в IANA для их идентификатора объекта. [ необходима цитата ] Поэтому приложения каталогов пытаются повторно использовать стандартные классы и атрибуты, чтобы максимально использовать преимущества существующего программного обеспечения сервера каталогов.
Экземпляры объектов помещаются в пространства имен; каждый класс объектов наследует от своего родительского класса объектов (и в конечном итоге от корня иерархии ) , добавляя атрибуты в список «обязательно-можно». Службы каталогов часто играют центральную роль в проектировании безопасности ИТ-системы и имеют соответственно тонкую гранулярность контроля доступа.
Репликация и распределение имеют различные значения в проектировании и управлении службой каталогов. Репликация используется для указания того, что одно и то же пространство имен каталога (те же объекты) копируются на другой сервер каталогов для избыточности и пропускной способности; реплицированное пространство имен управляется тем же органом. Распределение используется для указания того, что несколько серверов каталогов в разных пространствах имен связаны между собой для формирования распределенной службы каталогов; каждое пространство имен может управляться другим органом.
Службы каталогов были частью инициативы Open Systems Interconnection (OSI) для общих сетевых стандартов и взаимодействия между поставщиками. В 1980-х годах ITU и ISO создали набор стандартов X.500 для служб каталогов, изначально для поддержки требований электронного обмена сообщениями между операторами и поиска сетевых имен. Протокол Lightweight Directory Access Protocol (LDAP) основан на службах информации каталогов X.500, используя стек TCP/IP и схему кодирования строк протокола X.500 Directory Access Protocol (DAP) в Интернете .
Системы, разработанные до X.500, включают в себя:
Реализации на основе LDAP/X.500 включают в себя:
Инструменты с открытым исходным кодом для создания служб каталогов включают OpenLDAP, протокол Kerberos и программное обеспечение Samba , которое может функционировать как контроллер домена Windows с бэкэндами Kerberos и LDAP . Администрирование осуществляется с помощью GOsa или Samba SWAT.
Службы имен в системах Unix обычно настраиваются через nsswitch.conf . Информацию из служб имен можно получить с помощью getent .