首页>代码>基于springboot+layui实现的医院信息管理系统>/src/main/java/com/aaa/config/UserRealm.java
package com.aaa.config;


import com.aaa.entity.User;
import com.aaa.service.MenuService;

import com.aaa.service.UserService;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.AuthenticationException;
import org.apache.shiro.authc.AuthenticationInfo;
import org.apache.shiro.authc.AuthenticationToken;
import org.apache.shiro.authc.SimpleAuthenticationInfo;
import org.apache.shiro.authz.AuthorizationInfo;
import org.apache.shiro.authz.SimpleAuthorizationInfo;
import org.apache.shiro.realm.AuthorizingRealm;
import org.apache.shiro.subject.PrincipalCollection;
import org.apache.shiro.subject.Subject;
import org.apache.shiro.util.ByteSource;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class UserRealm extends AuthorizingRealm {
    @Autowired
    private MenuService menuService;

    /*
     * 认证
     * */
    @Override
    protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {
        //获取的前台username

        String username = (String) authenticationToken.getPrincipal();

        User sysUser = null;
        try {
            sysUser = menuService.loginname(username);
        } catch (Exception e) {
            e.printStackTrace();
        }
        //判断对象是否有值
        if (sysUser == null) {
            return null;
        }
        //密码不需要我们比对,shiro会给我们比对                      //对象    //获取前台密码
        SimpleAuthenticationInfo info = new SimpleAuthenticationInfo(sysUser, sysUser.getPwd(), ByteSource.Util.bytes(sysUser.getSalt()), getName());
        return info;

    }

    /*
     * 授权
     * */
    @Override
    protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) {
        return null;
    }


}
最近下载更多
zhaorrr  LV2 2024年11月7日
yyhrhv  LV8 2024年8月31日
叁卍石  LV5 2024年8月21日
TY0165  LV20 2024年6月21日
pxc1994  LV9 2024年5月14日
微信网友_6927932988952576  LV12 2024年3月31日
提灯寻白鹿  LV3 2024年3月27日
qqttuu  LV3 2024年3月4日
Hopu2024  LV2 2024年2月22日
xk16675552250  LV33 2024年1月5日
最近浏览更多
TaoTaot 4月7日
暂无贡献等级
小宋敲代码 3月25日
暂无贡献等级
gxyhk666 3月25日
暂无贡献等级
blanknb 3月18日
暂无贡献等级
尼可曲奇 3月3日
暂无贡献等级
yvimib  LV3 3月2日
暂无贡献等级
苯科仔 2024年12月16日
暂无贡献等级
之祠____ 2024年12月15日
暂无贡献等级
sjwc88  LV3 2024年12月4日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友