IBM HTTP Server 帮助:LDAP

检索 LDAP 信息 - 在 HP 或 Linux 上无效

介绍和概念

IBM HTTP Server 支持轻量级目录访问协议 (LDAP) 的使用,LDAP 是在 TCP 或 SSL 的连接上提供对 X.500 目录访问的协议。LDAP 允许您在目录服务中存储信息,并以数据库方式查询它。当您使用 X.500 目录和 LDAP 时, 任何启用的 LDAP 应用程序都可以存一次信息,如用户认证信息,而且使用 LDAP 服务器的其它应用程序也将识别该信息。

LDAP 通过仅包含原始 X.500 目录访问协议 (DAP) 的功能子集来减少必需系统资源。

IBM HTTP Server LDAP 支持具有最大限度的可伸缩性。您选择的 LDAP 配置包含:

本书假设您有一个可用的现有 X.500 目录服务,例如 IBM SecureWay X.500 目录。

X.500 概述

X.500 是带有提供更有效检索功能组件的目录服务。LDAP 使用了其中的两个组件: 信息模型,它确定了格式和字符,而名称空间则使得可以索引和引用信息。

X.500 目录结构不同于其它信息的存储和检索方式。它的信息与属性相关联。生成一个基于属性的查询,并被发送到 LDAP 服务器,而服务器则返回各自的值。LDAP 使用一种简单的、基于字符串的方法来表示目录条目。

一个 X.500 目录由条目组成,而这些条目根据 ObjectClass 属性被分类。每个条目由属性组成。ObjectClass 属性标识了条目类型(例如:个人或组织)而这些条目则确定了哪些属性是必需的,哪些属性是可选的。

排列在树状结构中的条目可以在地理和组织分发的服务器中分配。它们按照在分发层中的位置通过专有名称 (DN) 来命名。

LDAP 概述

访问 X.500 目录需要特定的协议,例如目录访问协议 (DAP)。然而,DAP 需要大量的系统资源和支持机制来处理复杂的协议。此处引入 LDAP 以使桌面工作站访问 X.500。

LDAP 基于客户机/服务器,许多 DAP 客户机必需重要资源交由 LDAP 服务器处理。LDAP 服务器只能向客户机返回结果或错误,而很少从客户机请求什么。如果 X.500 服务器无法回答客户机的请求,则它必须将请求链接到另一个 X.500 服务器。而服务器则必须完成请求或将错误返回给 LDAP 服务器, 该服务器将按序将信息传递给客户机。LDAP(轻量级目录访问协议)是一个信息目录,在该目录中只可一次定义用户和组,并跨多个应用程序甚至跨多台计算机共享。IBM HTTP Server LDAP 插件允许目录执行认证和授权(当访问受保护资源时是必需的),从而大大减少为维护每个 Web 服务器的本地用户和组信息的管理开销。

查询 LDAP 服务器

LDAP 搜索过滤器

LDAP 通过使用人类可读的字符串来访问 X.500 目录。当这些查询字符串被传送到 LDAP 服务器时,该服务器将返回条目的专有名称。

LDAP 条目由 ObjectClass 属性进行分类或归类,以简化搜索。例如,您可以搜索 objectclass=acl 的 LDAP 目录,以定位所有访问控制表的条目。

LDAP 条目的搜索过滤器具有以下结构:

要获取更多关于 LDAP 搜索过滤器的信息,请参阅 RFC 1960。

LDAP 搜索过滤器的示例

(cn=Joe Smith)
搜索公共名为 Joe Smith 的目录服务。 可能的匹配为:
Joe Smith

(!(cn=Jane Doe))
为公共名不是 Jane Doe 的条目查询目录服务。可能的匹配为:
Joe Schmoe
Adam Fosset
除了 Jane Doe 以外的任何名称

(&objectClass=acl)((sn=Johnson)
查询所有姓为 Johnson 的 acl 匹配条目。可能的匹配为:
Peter Johnson
Davey Johnson

(o=univ*of*carolin*)
查询组织属性。可能的匹配为:
University of North Carolina Chapel Hill
University of South Carolina
注: LDAP 可返回多个条目。然而,当返回多个的条目时,Web 服务器将不会认证。如果 University of North Carolina 和 University of South Carolina 包括在此示例所查询的目录中,它们都会被返回,认证将告失败。这样就必须改变过滤器。

在 IBM HTTP Server

使用 LDAP 以保护文件

  1. 要通过用户来定义: 启动 "IBM Administration Server"。转至“访问许可 > 一般访问”,并在“LDAP:配置文件”字段中插入 LdapConfigFile (C:/Program Files/IBM HTTP Server/conf/ldap.prop)。这是一个必要的文件。

    在“认证领域名”字段中输入目录的认证领域名。

    要通过组来定义:

    LDAPRequire group "group_name"
    示例:LDAPRequire group "Administrative Users"

    要通过过滤器来定义:

    LDAPRequire filter "ldap_search_filter"
    示例:LDAPRequire filter "(&(objectclass=person)(cn=*)(ou=IHS)(o=IBM))"

    注:仅可使用手工插入到 httpd.conf 中的 LDAPRequire。

  2. 要创建 LDAP 连接,您必须提供关于正在使用的 LDAP 服务器信息。 编辑您的 ldap 特性文件(在 HTTP Server conf 目录中找到的样本 ldap.prop)并插入可应用的伪指令:

  3. 单击提交以继续或单击复位以清除表单。

相关信息

LDAP 入门
LDAP 伪指令