EJB 身份验证和授权

Posted

技术标签:

【中文标题】EJB 身份验证和授权【英文标题】:EJB Authentication and Authorization 【发布时间】:2010-12-07 01:35:54 【问题描述】:

是否有任何方法可以使用标准的基于 JAAS/容器的安全性来扩展将客户端应用程序连接到 EJB 的身份验证操作?我正在寻找一种不仅仅使用用户名来验证用户身份的方法(在这种情况下,还需要域名)。理想情况下,我希望能够使用 SessionContext.getCallerPrincipal() 来访问 EJB 中的用户名和域名。

我正在使用 Glassfish,如果这会影响答案的话。我是否需要创建一个自定义登录模块/自定义领域,它应该做什么?

【问题讨论】:

【参考方案1】:

向 EJB 容器添加身份验证机制通常是供应商特定的任务。我不相信有一个标准的方法来做到这一点。不过,对于 Glassfish,我相信本文将帮助您设置一个 SAM(服务身份验证模块),它可以以您需要的任何方式处理身份验证。 http://blogs.oracle.com/enterprisetechtips/entry/adding_authentication_mechanisms_to_the

请记住,这是 Glassfish 特有的。

【讨论】:

我已经阅读了这篇文章,但我不能说我理解它对我有什么帮助。我是否需要创建自定义 CallerPrincipalCallback 才能设置自定义 Principal?

以上是关于EJB 身份验证和授权的主要内容,如果未能解决你的问题,请参考以下文章

JSF 认证和授权

JSF 认证和授权

ejb 关于角色和身份验证的安全问题

glassfish jdbcrealm身份验证中的受限页面未触发登录

什么是身份验证和授权 身份验证和授权介绍【详解】

使用对Wildfly 10的远程EJB调用进行身份验证时出现问题