Glassfish身份验证 - 如何使用我自己的登录方法

时间:2013-01-02 17:07:49

标签: java-ee authentication glassfish glassfish-3

我真的很陌生。这就是我想要实现的目标:

用户从登录网页输入他的用户名和密码,我的代码将检查我们的数据库。如果用户名和密码(存​​储在一个表中)是正确的,并且如果用户属于某个组(存储在另一个表中),那么我将允许用户登录。

我知道Glassfish附带了几个autentication领域:file,ldap,jdbc ......

如何将我的代码与其身份验证领域相结合?是否有可以遵循的教程或分步指南?

感谢。

2 个答案:

答案 0 :(得分:0)

如果您不想使用提供的Java EE安全实现,则可以使用Apache Shiro等第三方库,它提供基于角色的访问控制(RBAC)和身份验证。

http://shiro.apache.org/

答案 1 :(得分:0)

除了所有第三方认证机制外,您还可以提供由GlassFish服务器处理的自己的认证机制。 JAAS是基于表单的身份验证,您可以使用(因为JAAS还可以提供其他类型的身份验证机制)。我的目标机制就像是
某些应用的 HTTPRequest
- >
(重定向到)LoginAuthenticationApp
- >
(如果已授权)
- >
请求申请
- >>
(其他)登录App


现在这里是东西,登录后使用JAAS机制所有请求(每个httprequest)都将由您认证jar定义的Glassfish服务器提供。
另一件事,您可以分离您的登录APP或将其放在您的任何/每个应用程序中。
通过单独放置它,它的功能是读取请求,从DB进行身份验证并通过设置该cookie重定向到请求应用程序(如果您使用cookie)。
我发现的另一个好理由是所有请求都将去那个登录应用程序和实际应用程序,它可以防止任何类型的DOS攻击。
在这里你可以找到Customize container-managed security。我总是建议将容器管理的证券用于需要高安全性或具有DOS威胁的应用程序。