最近线上发生的几个坑

最近线上发生的几个坑

黑帐篷的毡片

某天的下午工作时间,我听着轻音乐在写业务(其实是在摸鱼),突然看到群里风控小组有人@我,内心惊呼:难道项目出问题了?打开文件查看,原来是 Nacos 的问题。

煮茶的残火

问题 1:

Nacos 竟然没有配置权限认证!,这个错误属实不应该,只能屁颠屁颠去改了。其实操作起来也简单,本项目 Nacos 是单机版,直接修改 Nacos 中的 conf 文件夹下面的 application.properties 配置文件。

官方文档是这么描述的:

注意

  • Nacos 是一个内部微服务组件,需要在可信的内部网络中运行,不可暴露在公网环境,防止带来安全风险。
  • Nacos 提供简单的鉴权实现,为防止业务错用的弱鉴权体系,不是防止恶意攻击的强鉴权体系。
  • 如果运行在不可信的网络环境或者有强鉴权诉求,请参考官方简单实现做替换增强。

服务端开启鉴权

nacos.core.auth.enabled=true

yml 配置文件 nacos 配置项中添加如下配置:

nacos.config.username: xxx
nacos.config.password: xxx

开启服务身份识别功能

开启鉴权功能后,服务端之间的请求也会通过鉴权系统的影响。考虑到服务端之间的通信应该是可信的,因此在1.2~1.4.0版本期间,通过User-Agent中是否包含Nacos-Server来进行判断请求是否来自其他服务端。

但这种实现由于过于简单且固定,导致可能存在安全问题。因此从1.4.1版本开始,Nacos添加服务身份识别功能,用户可以自行配置服务端的Identity,不再使用User-Agent作为服务端请求的判断标准。

开启方式:

### 开启鉴权
nacos.core.auth.enabled=true

### 关闭使用user-agent判断服务端请求并放行鉴权的功能
nacos.core.auth.enable.userAgentAuthWhite=false

### 配置自定义身份识别的key(不可为空)和value(不可为空)
nacos.core.auth.server.identity.key=example
nacos.core.auth.server.identity.value=example

冬天的雪花

问题 2:

​ Nacos 未开启访问权限控制,导致没有对用户输入的数据进行全面安全检查或过滤 ,没有进行访问权限的过滤。

如图所示:
在这里插入图片描述

修改方案同上,或者升级 Nacos 到安全稳定的版本并开启权限控制 。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用spring框架实现线上超市的过程中,需要考虑以下几个方面: 一、数据库设计 线上超市需要存储大量的商品数据,因此需要设计数据库来存储商品信息、用户信息、订单信息等。在设计数据库时,需要考虑到数据表之间的关联关系,以及如何优化查询效率,保证网站的访问速度。 二、基于spring的MVC架构 在基于spring框架写线上超市时,可以采用spring MVC架构开发。通过设计控制器来实现用户请求的相应处理,实现前后端的数据交互。Spring框架中的DispatcherServlet负责拦截请求,并将请求分发给相应的Controller,Controller再调用Service层进行业务逻辑处理,最终返回ModelAndView(模型和视图)给DispatcherServlet。 三、使用Spring Security实现安全认证 在开发线上超市时,需要保证用户的登录安全。可以使用Spring Security框架实现安全认证,包括用户注册、登陆、权限管理等功能。 四、整合支付宝或微信支付 在线上超市中使用支付宝或微信支付是必不可少的一项功能。可以通过Spring集成支付宝或微信支付的API来实现在线支付功能。 五、集成阿里云或华为云等云平台 为了保证线上超市的高可用性,可以使用Spring Cloud的相关框架来实现应用程序的多节点部署和负载均衡。同时,整合云平台的服务可以使网站运行更加稳定,提升用户体验。 总之,使用Spring框架开发线上超市可以提高开发效率,减少代码复杂度,提高代码质量。在开发过程中,需要结合实际业务需求和用户体验,保证网站的性能与安全性,实现更好的用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值