3-2Feign Basic认证 · SpringCloud微服务实战 · 看云

2.Basic 认证配置

导航

本节代码地址


一般我们在调用服务间的接口时,接口上都会设置需要的权限信息,而一般的权限认证有通过token校验的、也有通过用户名密码校验的等方式。比如我们在Feign 请求中我们可以配置Basic 认证,如下


@Bean
public BasicAuthRequestInterceptor basicAuthRequestInterceptor(){
    return new BasicAuthRequestInterceptor("user","123456");
}

那Spring Security Basic认证又是什么呢?
Spring SecuritySpring官方提供的安全框架,是一种比较重的权限校验框架,当然还有一种比较轻量型的框架shiro。关于Spring Security 的使用,我们后面会专门开一个模块来讲解。
接着上面说,如果我不是Basic认证又该怎么办?
那当然是自定义我们的拦截器了,请请求之前做认证操作,然后往请求头中设置认证之后的信息,下面通过实现RequestInterceptor接口可以自定义自己的认证。

2.1 自定义认证配置


@NoArgsConstructor
public class FeignAuthRequestInterceptor implements RequestInterceptor {

    @Override
    public void apply(RequestTemplate requestTemplate) {
        
    }
}

然后在FeignConfig配置中添加Bean


@Bean
public FeignAuthRequestInterceptor basicAuthRequestInterceptor(){
    return new FeignAuthRequestInterceptor();
}