使用Kerberos和JAAS保护Java EE Web服务

时间:2011-02-04 20:47:31

标签: java web-services ssl kerberos

发现有关基于Java的SSO 系统的this文章,并想知道它是否完全适用于安全的网络服务。

使用安全的网络服务,您需要:

  1. 安全运输
  2. 验证
  3. 数字标牌
  4. 加密的有效负载
  5. 通常可以通过SSL上的某些符合OASIS标准的安全框架(CXF,WSS4J,XWSS等)来完成传输。

    我对Kerberos,JAAS或GSS一点也不熟悉,但在我看来,如果它们可用于保持客户端和多个Java EE应用程序之间的安全连接,为什么它们不能用于切线使用其中一个框架(如WSS4J)来提供WSS。

    我可以使用Kerberos代替SSL,然后让WSS4J处理所有特定于WS的内容。

    通过这种方式,我可以创建可重用的Kerberos组件,这些组件既可以在SSO中使用,也可以在Web服务中用于传输层安全性。

    我在这里完全脱离摇杆吗?

1 个答案:

答案 0 :(得分:0)

Eugie, 所述要求是典型的。但细节在很大程度上有所不同。 因此,对单一方法或解决方案进行总结是不切实际的。

需求需要进一步细分和分析。

例如:SSO广泛地有两个要求a)认证b)授权。 您可以为两者使用单一解决方案,也可以为每种解决方案使一个精心设计的系统可以同时使用多个身份验证,例如基于表单,基于证书,基于令牌,远程身份验证。

在授权的情况下,我们可以使用LDAP / ActiveDirectory / Domino进行中心化解决方案 或者与以上所有协调分散。

这些解决方案中的每一个都有局限性,例如,Kerberos对密码猜测攻击无效

安全解决方案的选择取决于许多参数 坚持威胁,成本,提升等。

WS-Security项目试图解决许多此类架构问题。 回答你的问题 - 不,你不能使用kerberos进行SSO和传输层加密 --Kiran.Kumar