当前位置: 首页 > wzjs >正文

网站建设模板双人网页制作工作

网站建设模板双人,网页制作工作,外贸网址大全,学做网站是什么介绍如何在 Nacos 2.0.2 CentOS 7 环境中开启权限认证,包括 解压部署 和 Docker Compose 部署 两种方式,提供客户端 Spring Boot 项目的接入配置和nacos接口验证示例。 环境说明 操作系统:CentOS 7Nacos 版本:2.0.2部署方式&…

介绍如何在 Nacos 2.0.2 + CentOS 7 环境中开启权限认证,包括 解压部署Docker Compose 部署 两种方式,提供客户端 Spring Boot 项目的接入配置和nacos接口验证示例。


环境说明

  • 操作系统:CentOS 7
  • Nacos 版本:2.0.2
  • 部署方式:解压部署 / Docker Compose
  • 鉴权机制:Nacos 内置权限系统
  • 数据库:MySQL 持久化(用于存储用户、权限等)

一、解压部署方式开启权限认证

1. 修改 Nacos 配置文件

编辑 conf/application.properties 文件,添加或修改以下配置:

# 开启权限认证
nacos.core.auth.enabled=true
# 是否开启权限认证模块。开启后 Nacos 控制台、服务注册、配置拉取等都必须进行身份认证。
# 单机调试建议开启模拟真实环境;生产环境必须开启。
# 注意:开启后客户端必须配置 username/password,否则连接 Nacos 会失败(403)# token 有效期(单位秒)
nacos.core.auth.default.token.expire.seconds=18000
# 登录后生成的 token 的有效时间,单位为秒。默认 18000 秒(5 小时)。
# 可根据实际业务需求延长或缩短。token 失效后用户需重新登录。# token 密钥(必须为 Base64 编码字符串)
nacos.core.auth.default.token.secret.key=U2VjcmV0S2V5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDE=
# 该密钥用于生成和验证 token,必须是合法的 Base64 字符串。
# 多节点部署时所有节点必须设置相同的值,否则 token 无法互通。
# 修改密钥后旧 token 会立即失效,用户需重新登录。# 开启服务间身份验证(可选)
nacos.core.auth.caching.enabled=true
# 启用权限信息缓存,提高性能。修改用户权限后可能存在刷新延迟。nacos.core.auth.enable.userAgentAuthWhite=false
# 是否开启基于 User-Agent 的身份白名单机制。
# 该配置主要用于 1.x 升级场景,2.x 新部署不建议开启,存在绕过风险。# 服务间通信身份校验信息(可选)
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security
# 配置服务间通信的身份认证信息(key-value 对)。
# 多节点部署时用于节点间的身份信任校验。单机部署可以不配置。

我看有文章说要配置spring.security.user.name / spring.security.user.password ,但这两个是 Spring Boot 的 Basic Auth,与 Nacos 无关,不需要配置。


2. 重启 Nacos 服务

cd bin
sh shutdown.sh
sh startup.sh -m standalone

二、客户端如何携带用户名密码连接?

以 Spring Boot 项目为例:

spring:cloud:nacos:discovery:server-addr: ${NACOS_HOST:localhost}:${NACOS_PORT:8848}username: ${NACOS_USERNAME}password: ${NACOS_PASSWORD}namespace: devconfig:server-addr: ${spring.cloud.nacos.discovery.server-addr}username: ${NACOS_USERNAME}password: ${NACOS_PASSWORD}namespace: ${spring.cloud.nacos.discovery.namespace}

在启动脚本中注入环境变量:

方式一:命令行传参

nohup env NACOS_USERNAME=nacos NACOS_PASSWORD=your-password java -jar app.jar &

执行命令会被日志记录,存在暴露风险,如果是内部测试,则无所谓。

方式二:使用 .env 文件

.env 文件内容:

NACOS_USERNAME=nacos
NACOS_PASSWORD=your-password

设置权限:

chmod 600 .env

启动脚本中加载 .env

#!/bin/bash
BASE_DIR=$(cd "$(dirname "$0")"; pwd)
ENV_FILE="$BASE_DIR/.env"if [ -f "$ENV_FILE" ]; thenset -asource "$ENV_FILE"set +a
elseecho "[ERROR] .env 文件不存在"exit 1
fi
# 其他脚本如start/stop/restart/status等等。

三、Docker Compose 部署开启权限认证

使用如下 docker-compose.yml 配置:

version: '3.7'
services:nacos:image: nacos/nacos-server:2.0.2container_name: nacosrestart: alwaysenvironment:NACOS_AUTH_ENABLE: "true"MODE: standaloneSPRING_DATASOURCE_PLATFORM: mysqlMYSQL_SERVICE_HOST: your-mysql-hostMYSQL_SERVICE_DB_NAME: nacos_configMYSQL_SERVICE_PORT: 3306MYSQL_SERVICE_USER: nacosMYSQL_SERVICE_PASSWORD: nacos123JVM_XMS: 512mJVM_MMS: 512mJVM_XMN: 256mports:- "8848:8848"volumes:- ./logs:/home/nacos/logs

说明:

  • NACOS_AUTH_ENABLE=true 是开启权限认证的关键配置
  • 默认账号为 nacos/nacos,可登录后在数据库中修改,也可以在控制台中修改,一定要修改密码

四、接口行为对比:开启权限认证前后变化

通过以下接口调用对比,可以清晰看到开启权限认证前后 Nacos 行为的变化。

接口 1:获取用户列表(高敏接口)

curl -X GET "http://<nacos-host>:8848/nacos/v1/auth/users?pageNo=1&pageSize=10" \-H "User-Agent: Nacos-Server"

预期结果:

情况响应
权限认证未开启返回 200,直接获取用户信息
权限认证已开启返回 403,提示认证失败。


接口 2:获取当前登录用户信息

curl -X POST "http://localhost:8848/nacos/v1/auth/users/login?username=nacos&password=nacos" \-H "User-Agent: Nacos-Server"

一旦使用默认密码,攻击者就可以使用这个接口登录获取 token,在接口中增加头获取到信息了,所以一定要修改密码

通过这个接口获取 token,请求时带上 token,上面的接口就会获取到信息

curl -X GET "http://localhost:8848/nacos/v1/auth/users?pageNo=1&pageSize=10" \-H "User-Agent: Nacos-Server" \-H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJuYWNvcyIsImV4cCI6MTc0NTMzNDc4NX0.KOeW8XmpZKEXAsVCbf3ac8hNUfK04F7xS-MB_Kr4aMs"

结果:


六、配置建议与常见问题总结

配置项是否必需单机建议踩坑提醒
nacos.core.auth.enabled建议开启客户端需配置账号密码
token.expire.seconds可默认token 过期需重新登录
token.secret.key建议配置必须是 Base64 编码,集群需统一
caching.enabled建议开启权限更新可能有延迟
userAgentAuthWhite不建议开启存在绕过风险
server.identity.*单机无需集群部署必须一致


文章转载自:

http://bKWhMHeb.wbfLy.cn
http://FVACtgih.wbfLy.cn
http://sdaE6A6T.wbfLy.cn
http://lV0ckdf5.wbfLy.cn
http://sMeBekNE.wbfLy.cn
http://X43025qP.wbfLy.cn
http://DC8gKW7B.wbfLy.cn
http://8sE0GYDw.wbfLy.cn
http://JmWf3TZB.wbfLy.cn
http://HrK8arGp.wbfLy.cn
http://ZIuBr11p.wbfLy.cn
http://mK1b4Yeb.wbfLy.cn
http://8qqtBkLQ.wbfLy.cn
http://RPUHFbIB.wbfLy.cn
http://U2P9RKsB.wbfLy.cn
http://rfZDIk4h.wbfLy.cn
http://IyC6mBuH.wbfLy.cn
http://r2T0tSst.wbfLy.cn
http://q4Q4EpAp.wbfLy.cn
http://WhBL2F60.wbfLy.cn
http://VVx6cXcB.wbfLy.cn
http://BnPh8v5l.wbfLy.cn
http://Q8eGmuV8.wbfLy.cn
http://AZ353eik.wbfLy.cn
http://gcLxXM5Q.wbfLy.cn
http://VkuRMKtv.wbfLy.cn
http://ohshTQ0y.wbfLy.cn
http://kgq86DjV.wbfLy.cn
http://0DU48EIE.wbfLy.cn
http://v60Qmbbl.wbfLy.cn
http://www.dtcms.com/wzjs/618557.html

相关文章:

  • 提供五屏网站建设黑牛网站建设
  • python网站开发视频教程网站开发最适合语言
  • 做图表的网站 免费天津差旅管家商旅服务有限公司
  • 网站开发的推荐wordpress5添加alt属性
  • 手袋 技术支持 东莞网站建设ppt设计器在哪里
  • seo网站建设微wordpress前台压缩图片
  • 重庆网站seo技术湖南门户网站建设
  • 做网站考什么赚钱网站设计设
  • 南京网站建设耐油橡胶板球场 技术支持 东莞网站建设
  • 四川城乡建设网站证件查询微网站开发多少钱
  • 大学网站建设说明书企业做网站和宣传册的作用
  • 废旧电脑做网站服务器微信开放平台开发文档
  • 分类网站发布信息有生意做吗做家教什么网站比较好
  • 代理厦门网站设计公司什么是网络营销?网络营销有什么特点?
  • 深圳住房建设局官方网站windows wordpress固定链接
  • 怎么做黑客把网站余额更改百度收录排名好的网站
  • 网站菜单设置怎么样才能找到网站后台网址
  • 电子商务网站建设及推广方案网络推广公司运营
  • 上海做网站的的公司有哪些镇江网站建设制作公司
  • 佛山网站改版薇晓朵 WordPress 国内项目计划
  • seosem是什么职位网络seo哈尔滨
  • 北京网站建设解决方案网页开发人员招聘
  • 境外网站服务器网站建设程序代码
  • 莱芜网站优化是什么seo网站提交
  • 网站开发培训深圳网站图片一般的像素
  • 网站运营主要是做什么响应式网站建设企业
  • 东莞常平做网站网络营销方式和方法
  • 中国空间站机械臂内蒙古互联网公司哪里最多
  • 建网站后如何运营网页设计师考证试题
  • 品牌网站建设黑白H狼网页设计论文的研究内容