Crazy Chenz Asked: 2009-07-28 07:30:48 +0800 CST2009-07-28 07:30:48 +0800 CST 2009-07-28 07:30:48 +0800 CST 如何对 LDAP 数据进行数字签名? 772 如何对 LDAP 数据进行数字签名? 我想从用户机器向代理服务器发出 LDAP 请求,然后将请求中继到 LDAP 服务器。然后 LDAP 服务器将响应请求的数据以及验证代理服务器没有修改数据的签名? 谢谢,陈兹 security ldap certificate 2 个回答 Voted Mark Sutton 2009-07-30T00:01:54+08:002009-07-30T00:01:54+08:00 大多数启用 LDAP 的应用程序都支持安全 LDAP,它基本上是 LDAP over TLS。应用程序应该检查签名并报告任何问题。这将防止代理修改..您没有说您使用的应用程序是 COTS 应用程序还是您手动滚动的应用程序? sysadmin1138 2009-07-28T10:02:14+08:002009-07-28T10:02:14+08:00 我不知道有任何现成的标准方法可以做到这一点。如果代理是一个简单的 TCP 代理,它只转发数据包并重写部分 TCP 标头,则 SSL 可以工作,在这种情况下,SSL 会话实际上由实际的 LDAP 服务器终止。另一方面,如果代理比那更智能,那么 SSL 会话将与代理服务器终止,您将失去不可否认性。 后一种情况更难解决,没有标准。一种方法是构建您的系统,以便它使用自定义编写的 LDAP 扩展,或者可能只是 LDAP 数据库中的自定义属性,当查询时返回从返回的语句生成的校验和。这将允许检测一个邪恶的代理。或者,如果您需要更具体的不可否认性,请根据某种预共享密钥而不是校验和生成一个值。不幸的是,您可能必须对 LDAP 服务器进行一些更改。
大多数启用 LDAP 的应用程序都支持安全 LDAP,它基本上是 LDAP over TLS。应用程序应该检查签名并报告任何问题。这将防止代理修改..您没有说您使用的应用程序是 COTS 应用程序还是您手动滚动的应用程序?
我不知道有任何现成的标准方法可以做到这一点。如果代理是一个简单的 TCP 代理,它只转发数据包并重写部分 TCP 标头,则 SSL 可以工作,在这种情况下,SSL 会话实际上由实际的 LDAP 服务器终止。另一方面,如果代理比那更智能,那么 SSL 会话将与代理服务器终止,您将失去不可否认性。
后一种情况更难解决,没有标准。一种方法是构建您的系统,以便它使用自定义编写的 LDAP 扩展,或者可能只是 LDAP 数据库中的自定义属性,当查询时返回从返回的语句生成的校验和。这将允许检测一个邪恶的代理。或者,如果您需要更具体的不可否认性,请根据某种预共享密钥而不是校验和生成一个值。不幸的是,您可能必须对 LDAP 服务器进行一些更改。