有人可以使用jaas登录模块。我正在阅读docs&我的理解是有ntlogin模块,unix登录模块自带sun-jdk。
我想是这些登录模块可以 1.使用OS用户进行身份验证 2.提供该用户的组。
基本上我想用os进行身份验证。输入是用户名,密码和&团队名字。我想知道用户名,密码组合是否正确&用户属于该组。
我想通过Windows&流行的Linux发行版,如RHEL,Suse,CentOS。
我不想仅通过os身份验证进行LDAP身份验证。
对于Windows,有华夫饼库可用。但是我在使用64位机器时无法进行身份验证。在32位它运行良好。
对于linux,有jpam,但它没有给组。它只会检查用户名,密码组合。
答案 0 :(得分:0)
据我记得JAAS是关于Java代码和vm相关的授权:当前正在运行的代码是否有权做某事?
我认为使用一些os原生包装脚本来验证用户更容易,然后只需在Java代码中提取用户信息。
答案 1 :(得分:0)
我一直在找同样的事情。到目前为止,我发现Unix“登录模块”实际上没有进行任何身份验证;它为进程的所有者的用户和组创建Principal,并将它们添加到Subject。这使得对webapp会话进行身份验证毫无用处。
您将需要本机代码来验证操作系统凭据,但应该可以将其挂钩到JAAS中。将该本机代码变成一个小而简单的外部帮助程序(就像许多'checkpasswd'程序中的一个,它有类似的框架来解决同一个问题)是有意义的,因为它需要提升的权限才能访问存储的密钥