第三节 给SpringBootAdmin的client端加入spring security安全控制

news2024/9/22 3:28:32

前言

本来想用一节就写完SpringBootAdmin的,但随着研究的深入发现一节应该是不够的,网上的资料也不会非常系统,官网的例子有些已经好几年没更新了,所以接下来还是系统性的来写下吧

第一节 完成基础配置,暴露所有端点
第二节 给SpringBootAdmin的server端加入spring security安全控制
第三节 给SpringBootAdmin的client端加入spring security安全控制
第四节 配置SpringBootAdmin日志管理
第五节 配置SpringBootAdmin电子邮件通知

一、给client加入spring security

在没有给client加入安全控制之前,我们是可以随意访问http://localhost:9091/actuator 这类地址的
在这里插入图片描述这样肯定是不安全的,而且一般来说,client端肯定已经配置好security了。接下来加入依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>

重启以后我们发现,client仍旧可以注册上线,client端的自身的访问也需要密码了,应用墙里面显示的数据很少:
在这里插入图片描述想要显示和之前一样的数据,那么就要让server端可以访问client端暴露出的actuator。

二、client端配置账号

同样先个security配置账号,我们这里还是采用简单配置文件处理,正常client端还是数据库持久化的配置比较多。

# admin client security account
spring.security.user.name=client
spring.security.user.password=client

然后增加配置类

@Configuration
public class SecurityConfig {
    @Bean
    protected SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
        return http.authorizeHttpRequests((authorizeRequests) -> authorizeRequests
                .anyRequest()
                .authenticated())
                .formLogin()
                .and()
                .httpBasic(Customizer.withDefaults())
                .csrf().disable().build();
    }
}

client端配置完毕后,基本上可以实现对client的安全控制了,当然正常的client端的security配置肯定会比这个复杂,比如会自定义登录,权限等工作。

三、server端配置账号

最后我们对server端配置下探的client账号就可以,记得用户名和密码要跟client端配置的一致。

# admin client account
spring.boot.admin.instance-auth.default-user-name=client
spring.boot.admin.instance-auth.default-password=client

重启服务,现在可以正常访问所有的细节信息了。同时也能保证client端的安全性了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/729006.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

B2B2C商城模式适合哪些的企业?

随着互联网的发展&#xff0c;电商也变得的越来越火热&#xff0c;很多个人和企业进驻其中&#xff0c;所以竞争激烈&#xff0c;如天猫和京东&#xff0c;他们内部的店家多不胜数&#xff0c; 在这种大环境下&#xff0c;企业开始做出不一样的举动&#xff0c;纷纷都搭建一个b…

samba参数配置教程(samba配置参数讲解)(/etc/samba/smb.conf )

文章目录 samba smb.conf配置文档smb.conf重要配置参数讲解1. workgroup&#xff1a;指定Samba服务器所在的工作组名称。2. server string&#xff1a;指定Samba服务器的描述信息。3. security&#xff1a;指定Samba服务器的安全模式&#xff0c;可以是user、share或domain。4.…

ssh配置多账号(Mac)

一. 应用场景 当存在同时需要git在GitHub、gitee、gitlab等多个不同git托管平台进行ssh代码操作的时候。 二. 具体操作 默认 ssh-keygen -t rsa -C "你的邮箱"之后一直回车就可以&#xff0c;会默认在~/.ssh目录下生成id_rsa、id_rsa.pub 指定文件 ssh-keygen …

实验九 单周期MIPS CPU设计实验(基于Logisim)

一、实验目的 学生掌握控制器设计的基本原理&#xff0c;能利用硬布线控制器的设计原理在Logisim平台中设计实现MIPS单周期CPU。 二、实验内容 利用运算器实验&#xff0c;存储系统实验中构建的运算器、寄存器文件、存储系统等部件以及Logisim中其它功能部件构建一个32位MIPS …

基本数据类型转换

自动类型转换 当Java程序在进行赋值或运算时&#xff0c;精度小的类型自动转换为精度大的数据类型&#xff0c;这个就是自动类型转换。 int a 3; double d a; // 类型转换 int --> double自动类型转换使用和细节&#xff1a; 有多种类型的数据混合运算时&#xff0c;系统…

基于Java养老院老人健康监护平台设计实现(源码+lw+部署文档+讲解等)

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

element-ui组件中的Tooltip 文字提示:el-tooltip中content是变量怎么写

<el-tooltip content"Top center" placement"top"><el-button>Dark</el-button> </el-tooltip> 这样的效果是&#xff1a; 可以看出&#xff0c;content是提示内容。如果是文字提示可以直接写在content里面。 content是变量应该…

飒智智能机器人核心技术与应用论坛暨一体化控制器发布会成功举办

7月6日&#xff0c;智能机器人核心技术与应用论坛暨移动操作复合机器人一体化智能控制器发布会在上海举行。本次活动由上海飒智智能科技有限公司主办&#xff0c;得到上海市经信委、闵行区科委、闵行区经委、“大零号湾”属地单位南滨江公司、江川路街道办事处的支持&#xff0…

给大模型持久记忆!GitHub 2万星向量数据库云服务升级,国内云产品下周上线

一个在GitHub上标星超2万的数据库&#xff0c;究竟是什么来头&#xff1f; 原来&#xff0c;这正是最近大火的向量数据库之一、首个在这一赛道开源产品Milvus。 自大模型爆火以来&#xff0c;它的关注度也一路飙升&#xff0c;官方显示&#xff0c;目前Milvus已经拥有超过1000企…

数据结构中队列的操作方式,一目了然

队列的概念 首先我们联想一下链表&#xff0c;在单链表中&#xff0c;我们只能对他的链表表尾进行插入&#xff0c;对链表的表头进行结点的删除&#xff0c;这样强限制性的链表&#xff0c;就是我们所说的队列。 也就是说&#xff0c;队列&#xff08;queue&#xff09;是限定…

云盘选择攻略:寻找易用且高效的同步云盘服务

同步云盘是集备份、同步、共享于一体的软件&#xff0c;备受用户青睐。在这个信息化的时代&#xff0c;我们经常需要在不同的设备之间共享文件&#xff0c;而同步云盘正可以帮助我们在多台设备之间同步文件。不过目前市面上同步云盘众多&#xff0c;我们该如何选择同步云盘呢&a…

数据结构【考研笔记】

数据结构【考研笔记】 第一章 绪论一、数据结构的基本概念1、基本概念1&#xff09;数据2&#xff09;数据元素、数据项3&#xff09;数据对象、数据结构4&#xff09;数据类型、抽象数据类型&#xff08;ADT&#xff09; 2、三要素1&#xff09;逻辑结构2&#xff09;存储结构…

C++学习 指针

目录 指针 指针的定义和使用 指针所占用的内存空间 空指针与野指针 const修饰指针 指针和数组 指针和函数 指针 指针是一个变量&#xff0c;其值为另一个变量的地址&#xff0c;即内存位置的直接地址。就像其他变量或常量一样&#xff0c;您必须在使用指针存储其他变量地…

动态规划:背包问题

01背包&#xff1a;物品只能选一个 完全背包&#xff1a;物品可以选无数个 注&#xff1a;01背包与完全背包&#xff0c;不论是求背包装的最多物品的价值&#xff0c;还是求装满容量为bag的背包最多有几种方法&#xff0c;区别都在里层遍历背包时&#xff0c;01背包使用倒序…

three.jsgsap滚动交互网页实现 1-模糊背景线条

实现 模型只有其中的一根线条 加载完模型后 将其圆形排列一周 要实现圆形排列一周可以自己计算sin和cos实现&#xff0c;更简单的可以使用vector3的setFromCylindricalCoords方法实现 该方法计算返回圆柱上的点&#xff0c;圆柱上的点由参数决定 使用方法&#xff1a; for (let…

监听DOM尺寸变化 - ResizeObserver

一、与 MutationObserver Api的区别 MutationObserver 主要用来监听 DOM 元素的属性和节点变化的&#xff0c;非 DOM 样式尺寸&#xff0c;可查看之前一篇 blog - DOM规范 - MutationObserver接口观察DOM元素的属性和节点变化ResizeObserver 主要用来监听 DOM 元素的 内容区域…

Stable Diffusion WebUI 不同采样方法的效果、耗时对比记录

测试方法 所有测试除了采样方法调整&#xff0c;其他均保持一致。主要参数信息如下 1girl, 3d, architecture, blurry, blurry background, blurry foreground, breasts, brown hair, building, cherry blossoms, city, cityscape, cosplay photo, cowboy shot, day, depth o…

hive2.3.7安装部署-问题:show databases;没反应

目录 一、安装包准备 二、安装mysql 三、hive安装 四、hive启动 五、问题 环境&#xff1a;CentOS7.2.xx、hadoop2.6.4、jdk1.8.0xx、mysql-5.7.38 hive是基于Hadoop的一个数据仓库工具&#xff0c;可以将结构化的数据文件映射成一张表&#xff0c;并提供类SQL查询功能。…

【计算机组成原理期末课设作业】16位微型计算机实现——MOVS串传送扩展指令设计

16位微型计算机实现——MOVS串传送扩展指令设计&#x1f60e; 前言&#x1f64c;教学目的&#xff1a;1、数据**加粗样式**通路分析2、微程序控制器分析3、指令系统分析4、微程序控制器指令周期流程图5、微指令编码6、测试程序和运行结果&#xff08;1&#xff09;首先先在内存…

asp.net core 框架搭建2-搭建MVC后台管理系统

文章目录 系列文章1.项目搭建1.1 新建Asp.net core MVC项目1.2 ASP.NET Core MVC目录结构1.3 创建一个控制器&#xff0c;与页面数据交互1.4 实现一个登录页面1.5 实现后台管理主界面 2.过程中知识点和涉及到的问题2.1 session的使用2.2 EF Core连接mysql 源码下载 作者&#x…