oauth2-实现单点登录(一)最简示例

本文详细介绍了如何使用Spring Cloud OAuth2搭建认证服务端,并配置两个客户端实现单点登录。通过创建授权服务器、配置认证服务、设置Web安全配置,以及客户端的配置,展示了SSO的基本流程。测试过程包括登录、授权、获取token及校验token。此外,还提到了重定向地址、资源服务器配置以及不同客户端的配置要点。

参考教程:https://my.oschina.net/wotrd/blog/3056409
本示例实现最简配置下的实现单点,排除其他干扰

项目结构

在这里插入图片描述

一、认证服务端sso-server

创建springcloud项目

1.导入关键的依赖

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-oauth2</artifactId>
        </dependency>

完整依赖pom见:pom.xml

2.配置认证服务

创建AuthConfig,继承AuthorizationServerConfigurerAdapter
redirectUris的配置,要和外部请求的重定向地址一致,不然出错

// 开启认证服务
@Configuration
@EnableAuthorizationServer
public class AuthConfig extends AuthorizationServerConfigurerAdapter {

    /**
     * 配置密码加密, springboot2.x需要配置
     * @return
     */
    @Bean
    public BCryptPasswordEncoder passwordEncoder() {
        return new BCryptPasswordEncoder();
    }

    @Override
    public void configure(ClientDetailsServiceConfigurer clients) throws Exception {
        clients.inMemory()
                .withClient("client") //客户端client_id
                .secret(passwordEncoder().encode("secret")) // 客户端 secret
                .authorizedGrantTypes("authorization_code") // 授权类型, 授权码
                .scopes("app") // 范围
                .redirectUris("https://www.hao123.com/"); // 重定向地址 登录地址
    }

    /**
     * 放开token和checkToken 拦截
     * @param oauthServer
     */
    @Override
    public void configure(AuthorizationServerSecurityConfig
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值