0

我有一个托管数据服务的 Linux/Apache/Rails 堆栈。数据服务基本上是多个数据源的前端,类似于联合搜索。

对服务的查询通过 PKI 进行身份验证。在处理每个请求时,必须将 PKI 转发到适合给定请求的每个数据源 - 每个数据源都使用 PKI 来控制数据访问。

我知道如何从 Rails 访问请求者的 DN,但我不知道如何访问 PKI 或在处理请求时控制器启动的 Web 请求中传递它。有什么建议么?

4

1 回答 1

0

您的描述使您很难了解该组织,但我会尝试尝试一下。

PKI 的性质使得转发(代理)连接是不可能的,因为两个端点设置了一个只有这些方知道的秘密会话密钥。看起来你有 3 方,一个客户端,一个中间体和一个端点。因此客户端可以向中间人进行身份验证,中间人现在可以确定地知道客户端是谁。我认为您的问题是如何让端点确定客户是谁。我选择的方法是让每个中间人都有自己的证书,并对端点本身进行身份验证(所以现在端点肯定知道中间人是谁)然后让中间人将 DN 作为端点将传递的一些额外字段来自中间的信任。

于 2011-01-14T17:12:38.897 回答