发布
社区首页 >问答首页 >使用OSGi包中的https保护webservice

使用OSGi包中的https保护webservice
EN

Stack Overflow用户
提问于 2014-01-19 21:51:46
回答 1查看 629关注 0票数 0

我想保护在endpoint.publish()中发布的webservice组件在OSGi包中的通信安全。为此,我正努力回答三个问题。

  1. 如何使用信任库中的证书来使用IP构建https发布服务器?因为这个包是在嵌入式计算机上运行的,没有使用该服务的客户端所知道的机器名称。
  2. 如何在包中加载*.jks密钥存储?由于还有另一个类路径,我无法使用新文件(./ *.jks . new )找到这个文件。是的,我在这里发现了类似的问题,但没有用。
  3. 我不想实现某种身份验证。现在,我在头文件中发送用户名和密码(这就是我最初想保护通信安全的原因)。有没有办法不检查每个webservice方法调用的头中的用户名/密码?因为我有大约20个已发布的方法,复制相同的检查代码是很奇怪的。

运行时为Java1.6,春分3.7.1。客户端是另一个web应用程序(使用php)。

一般来说,对于安全发布best服务(特别是关于OSGi包),是否有最佳实践?

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-20 12:04:37

我会按顺序回答:

  1. 在证书中使用IP地址作为通用名称(CN)可能不是很好的形式。您最好在本地为该IP地址指定一个名称(例如,在大多数系统上的主机文件中)。或者,您可以通过配置客户端跳过名称验证-但是,在这种情况下,您可以接受CA颁发的任何证书。如果您对PKI有足够的控制,例如,如果您使用自签名证书,则仍然可以选择此选项。
  2. KeyStores (并且信任库是密钥存储库)可以使用InputStream加载,并且可以为资源创建输入流。有关详细信息,请参阅this question on stackoverflow
  3. 尝试使用会话上下文将身份验证绑定到会话,而不是绑定到单个页面。显然,如果没有SSL,这就不太安全了,但是有了SSL,您就可以了。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21223159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档