Spring RESTful Web服务和Android身份验证

时间:2018-11-05 13:16:44

标签: android spring spring-security

我具有以下Spring Security配置。

@Override
protected void configure(HttpSecurity http) throws Exception
{
    http
            .authorizeRequests()
                .antMatchers("/admin/**").hasRole("ADMIN")
                .anyRequest().authenticated()
                .and()
            .formLogin()
                .loginPage("/login")
                .permitAll()
                .and()
            .logout()
                .logoutRequestMatcher(new AntPathRequestMatcher("/logout"))
                .permitAll();
}

它工作正常,但我想拥有使用REST API的Android客户端应用程序。当我在Android应用程序中使用API​​时,会将我重定向到Web登录页面。这是理想的行为,但仅在Web应用程序中。

我具有Speditor,Accountant,Driver等角色。除Driver之外,所有其他人都应该能够登录Web应用程序。在android上,我想要单独登录,该登录仅对具有驱动程序角色的用户进行身份验证。

问题是我不知道如何分隔这些身份验证,因此这两个应用程序(Web和Android)可以使用相同的API。你能给我一些建议吗?

1 个答案:

答案 0 :(得分:0)

我的处境相同,但有所不同。就我而言,我分为3个客户端,如下图所示:

enter image description here

但是,就我而言,我对三个用户/密码具有相同的身份验证。 我认为有一种方法可以做您尝试做的事情,但是,您可以开始研究如何与其他客户端进行身份验证。

对不起英语,我不是母语人士,所以我正在努力。