apollo配置中心apollo-portal权限的介绍分享

一、前言

本文是采用apollo配置中心 1.5.0 进行介绍

配置中心进行容器化部署,从官方下载的apollo-portal.jar包,解压出来,发现spring.profiles.active=github,auth

在这里插入图片描述

上面的意思,就是采用 auth 进行鉴权,采用该鉴权,就是走apollo默认用户权限关系,采用前后端不分离的session方式进行鉴权。

如果从github下载apollo配置中心源码,spring.profiles.active的参数是没有默认值的

spring:
  application:
    name: apollo-portal
  profiles:
    active: ${apollo_profile}

1.1 从官网节选,可以看出

apollo介绍
在这里插入图片描述

实现方式一:使用Apollo提供的Spring Security简单认证
可能很多公司并没有统一的登录认证系统,如果自己实现一套会比较麻烦。Apollo针对这种情况,从0.9.0开始提供了利用Spring Security实现的Http Basic简单认证版本
...
实现方式二: 接入公司的统一登录认证系统
这种实现方式的前提是公司已经有统一的登录认证系统,最常见的比如SSO、LDAP等。接入时,实现以下SPI。其中UserService和UserInfoHolder是必须要实现的.

从以上的说法看出,配置中心还是特别灵活的。但是有时候,有权限还是比较麻烦的,要是我们想取消权限,该怎么做。

很简单,就是删掉 auth 即可。例如 spring.profiles.active=github

二、放弃鉴权的方式

虽然说少去登录界面,但是依然有账号这个概念,apollo配置中心默认的的账号为 apollo。

既登录进去,即是使用 apollo这个账号

2.1 修改apollo这个账号,默认使用自己的账号

想要修改apollo这个账号,默认使用自己的账号,只能通过修改源码进行配置。

源码的位置在 com.ctrip.framework.apollo.portal.spi.defaultimpl

在这里插入图片描述

通过修改

  @Override
  public UserInfo getUser() {
    UserInfo userInfo = new UserInfo();
    userInfo.setUserId("已经存在portal中的账号");
    return userInfo;
  }

DefaultUserService.java 也要进行对应的修改

修改完毕,重新打包部署,既可以使用 spring.profiles.active=github

2.2 该修改方式的意义

现在很多公司都是走微服务那一套,前后端分离,如果想自定义apollo的前端界面,这个是最方便的方式

步骤1
把 apollo-portal 引入注册中心依赖,通过微服务调用

步骤2
把 apollo-portal 界面的接口捋清楚,自己编写前端界面,调用即可。

猜你喜欢

转载自blog.csdn.net/qq_34168515/article/details/113386643