zk 集成jboss jaas

本文介绍了如何通过修改login-config.xml和jboss-web.xml文件来配置JBoss应用服务器的身份验证过程。具体步骤包括设置application-policy,定义数据库登录模块参数,以及在类中获取用户的登录名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.首先在login-config.xml配置中增加application-policy。

 

<application-policy name = "zkdemo">
       <authentication>
          <login-module code = "org.jboss.security.auth.spi.DatabaseServerLoginModule"
             flag = "required">
             <module-option name = "unauthenticatedIdentity">guest</module-option>
             <module-option name = "dsJndiName">java:/cnmds</module-option>
             <module-option name = "principalsQuery">SELECT LOGINPWD PASSWORD FROM WS_CUST_LOGIN  WHERE LOGINID=?</module-option>
             <module-option name = "rolesQuery">SELECT ROLENAME,'Roles' FROM VREL_PORTAL_ROLE  WHERE LOGINCODE=?</module-option>
             <module-option name="hashAlgorithm">MD5</module-option>
						 <module-option name="hashEncoding">base64</module-option>
          </login-module>
       </authentication>
    </application-policy>

 

 2.然后在项目中WEB-INF中增加jboss-web.xml

<jboss-web>
   <!-- Uncomment the security-domain to enable security. You will
      need to edit the htmladaptor login configuration to setup the
      login modules used to authentication users.
   -->
	 <class-loading java2ClassLoadingCompliance="false">
	   <loader-repository>
	      zkdemo:loader=zkdemo.war
	      <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
	   </loader-repository>
	 </class-loading>   
   <security-domain>java:/jaas/zkdemo</security-domain>
</jboss-web>

 3.在类中取登陆的用户名

 

final Execution exec = Executions.getCurrent();

if(exec.getUserPrincipal() != null){
    String loginId = exec.getUserPrincipal().getName();//取登陆的用户名

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值