您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

将用户添加到会话中,Spring Security默认登录

将用户添加到会话中,Spring Security默认登录

您确实使其变得复杂… :)

您想要的是向Spring的常规身份验证管理器中添加自定义身份验证提供程序。因此,您可以这样配置身份验证管理器:

    <security:authentication-manager alias="authenticationManager">
      <security:authentication-provider user-service-ref="authServiceImpl">
        <security:password-encoder ref="passwordEncoder"/>
      </security:authentication-provider>
    </security:authentication-manager>
    <bean id="passwordEncoder" class="org.springframework.security.authentication.encoding.Md5PasswordEncoder"/>

现在,您只需要在spring上下文中定义authServiceImpl bean。您可以通过xml或注释(我的首选方式)来完成此操作。

@Service
public class AuthServiceImpl implements AuthService {

您需要实现AuthService接口。只需从接口实现方法即可-应该非常简单。您不需要自己将东西放到SecurityContextHolder中- spring可以做到这一点。

您想要的是:

public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException, DataAccessException {
     return MyUser user = myUserService.getMyUser(username);
}

随时询问您是否还有其他问题。

编辑:或者您可以只让您的UserService类实现该接口-我这样做是因为您没有提供UserService类。

Java 2022/1/1 18:21:09 有290人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶