有没有办法使用标准的基于 JAAS/容器的安全性来扩展将客户端应用程序连接到 EJB 的身份验证操作?我正在寻找一种不仅仅使用用户名来验证用户身份的方法(在这种情况下,还需要域名)。理想情况下,我希望能够使用 SessionContext.getCallerPrincipal() 来访问 EJB 中的用户名和域名。
我正在使用 Glassfish,如果这会影响答案的话。我是否需要创建自定义登录模块/自定义领域,它应该做什么?
有没有办法使用标准的基于 JAAS/容器的安全性来扩展将客户端应用程序连接到 EJB 的身份验证操作?我正在寻找一种不仅仅使用用户名来验证用户身份的方法(在这种情况下,还需要域名)。理想情况下,我希望能够使用 SessionContext.getCallerPrincipal() 来访问 EJB 中的用户名和域名。
我正在使用 Glassfish,如果这会影响答案的话。我是否需要创建自定义登录模块/自定义领域,它应该做什么?
将身份验证机制添加到 EJB 容器通常是供应商特定的任务。我不相信有一个标准的方法来做到这一点。不过对于 Glassfish,我相信本文将帮助您设置一个 SAM(服务身份验证模块),它可以以您需要的任何方式处理身份验证。http://blogs.oracle.com/enterprisetechtips/entry/adding_authentication_mechanisms_to_the
请记住,这是 Glassfish 特有的。