我需要使用X509证书为基于Spring的Web服务验证SOAP请求的数字签名,该Web服务接受来自多个供应商的请求。
实施此类安全的一般策略是什么?我应该为每个供应商创建一个Web服务,以便我可以根据调用者的公钥验证数字签名吗?理想情况下,我希望只有一个Web服务,因为每个供应商请求的内容都具有相同的架构。
答案 0 :(得分:0)
SOAP消息的数字签名嵌入到消息的SOAP头中。这是消息的简化模式。 (参见完整示例here)
output: {
filename: "./bundle_a.js",
devtoolModuleFilenameTemplate: "bundle_a/[resource-path]"
},
签名允许知道引用用于签名的x509证书的签名者的身份。
您不需要为每个供应商提供不同的Web服务。 要允许访问,请将证书的公共部分请求给将用于签名邮件的供应商。收到soap消息后,将签署者证书与预期证书进行比较。
为简化比较,您可以查看序列号+发行人