2016-09-26 32 views
1

我使用选项选择了具有X509证书的签名消息,并将Docusign连接配置添加到API端点。如何验证Apache级别的数字签名?

在Apache(目录)级别需要什么配置才能验证与Docusign Payload一起发送的数字签名。

我试图把

SSLVerifyClient需要

在目录级。当我取消选中签名消息和X509证书选项时,它仍然允许请求。

我只想要那些具有有效签名的请求。我有Docusign为DEMO实例提供的公钥。

请帮我把正确的配置拒绝未签名的请求或具有更改签名的请求。

回答

0

如果您希望只允许来自DocuSign和Apache的请求,则应该使用Mutual TLS而不是尝试验证签名。

正确验证签名只能用Apache后面的一些代码完成。

相互TLS需要一个证书身份验证,以便能够通过SSL Handcheck,这是你试图实现与SSLVerifyClient什么

所以,这是你应该做的

  1. 启用相互TLS什么连接配置
  2. 配置你的apache的东西,如

    SSLCACertificateFile /path/to/ca-bundle 
    SSLVerifyClient require 
    SSLVerifyDepth 3 
    SSLRequire %{SSL_CLIENT_S_DN_CN} eq "demo.connect.docusign.net" 
    

的DocuSign连接证书:https://trust.docusign.com/en-us/trust-certifications/docusign-public-certificates/

检查:https://httpd.apache.org/docs/2.4/en/mod/mod_ssl.html更精确地与SSLRequire或约SSLCACertificateFile

解说