代码之家  ›  专栏  ›  技术社区  ›  kislo_metal

在JAX-WS中使用安全性的最佳做法是什么

  •  3
  • kislo_metal  · 技术社区  · 16 年前

    以下是场景: 我有一些需要保护的Web服务(JAX-WS)。 目前,对于身份验证需求,我提供了附加的SecurityService,它为授权用户提供了一些需要在对其他服务的请求中描述的用户ID和会话ID。

    最好使用一些Java安全性。我们有很多,但无法定义更好的用法。

    问题1:可以理解,我应该在传输层中使用SSL,但是应该使用什么来进行用户授权。有没有更好的方法来建立会话、验证用户等?

    以下是一些关键描述:

    1. 大多数Web服务都是基于PHP的。
    2. 我将JAXWS实现用作无状态会话EJB。
    3. 部署到Glassfish v3。

    问题2:在使用JSF 2.0和EJB3.1技术(realms)的情况下,用户授权/身份验证的最佳框架/技术是什么?什么?)?

    谢谢您!

    1 回复  |  直到 14 年前
        1
  •  1
  •   Daniel Szalay    14 年前

    有一点是肯定的,你必须使用https。SSL是保持这些组件之间安全连接的粘合剂。

    如果存在分布在不同域/服务器之间的服务,并且您需要Web浏览器/客户端在所有这些系统中保持状态,那么 oAuth 是一个很好的解决方案。在该网站上有一个Java和PHP OAuthIn植入。OAuth很灵活,可以满足很多需求。

    更简单的方法是使用 HTTP基本身份验证 具有SQL数据库支持的访问控制列表。会话状态可以存储在数据库或会话bean中,并由自定义Web服务访问。这比OAuth更常见。