2014-05-16 44 views
0

我是Springboot的新手。我开发了一个休息服务器,但我想知道如何从客户端执行基本身份验证,以及如何配置Spring引导服务器来验证请求。我在网上看到的教程没有包含一个宁静的客户端。如果您可以使用springboot rest显示包括客户端请求和服务器身份验证过程的代码,那将是非常棒的。在SpringBoot中保护REST应用程序并从Rest客户端访问它

+0

您使用的是哪个http客户端? – geoand

+0

我使用Jersey客户端。 –

+0

但是任何java客户端都会为我的规范做些什么。 –

回答

0

在客户端,因为你正在使用Jersey客户端,你需要做类似如下:

Client c = Client.create(); 
c.addFilter(new HTTPBasicAuthFilter(user, password)); 

一个需要启用春季安全,并设置基本验证了它这看起来会是在服务器端如下所示(这是最简单的情况)。

@Configuration 
@EnableWebSecurity 
public class RootConfig extends WebSecurityConfigurerAdapter { 

@Override 
protected void registerAuthentication(AuthenticationManagerBuilder auth) throws Exception 
{ 
auth.inMemoryAuthentication() 
    .withUser("tester").password("passwd").roles("USER"); 
} 

@Override 
protected void configure(HttpSecurity http) throws Exception { 
    http 
    .authorizeUrls() 
     .anyRequest().authenticated() 
     .and() 
    .httpBasic();  
    } 
} 
+0

使用Spring Boot,所以不需要任何配置(除非你真的需要它)。启动时在控制台上打印默认密码。 –

+0

@DaveSyer感谢您的信息!自从我需要进行更多手动配置所需的安全性以来,这是一个回避我的注意力的功能。也许你应该添加你的评论作为答案,让大家可以轻松看到 – geoand

+0

@DaveSyer另外,对于你来说,在Pivotal的优秀人士更新以下指南可能是一个好主意https://spring.io/guides/gs/securing-web /,以反映Boot自动配置安全性的能力 – geoand