开发者社区 > 云原生 > 正文

Nacos 突然报错403 修改hash值之后重新发布服务后又正常了是什么情况呢?

Nacos com.alibaba.nacos.api.exception.NacosException:

Whitelabel Error Page

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Thu Dec 07 10:45:41 CST 2023
There was an unexpected error (type=Forbidden, status=403).
user not found!
请问下服务正常跑了一段时间之后,突然报错403 修改hash值之后重新发布服务后又正常了是什么情况呢? 版本是2.2.2的

展开
收起
真的很搞笑 2023-12-13 21:57:20 113 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    根据提供的错误信息,服务在运行一段时间后突然报错403,并且修改hash值后重新发布服务又恢复正常。这种情况可能是由于Nacos的鉴权机制导致的。

    在Nacos中,默认情况下,客户端需要提供正确的账号和密码来进行认证才能访问配置中心或注册中心。如果客户端没有提供正确的认证信息,或者提供的认证信息不正确,服务器会返回403 Forbidden错误。

    根据你的描述,当服务突然报错403时,你修改了hash值并重新发布了服务,然后服务又恢复正常了。这可能是因为修改hash值后,客户端的认证信息发生了变化,从而使得服务器允许客户端进行访问。

    为了解决这个问题,你可以采取以下步骤:

    1. 确保你的Spring Boot应用配置文件中正确配置了Nacos的账号和密码。你可以在配置文件中使用spring.cloud.nacos.discovery.usernamespring.cloud.nacos.discovery.password来指定账号和密码。例如:

      spring:
        cloud:
          nacos:
            discovery:
              username: your-username
              password: your-password
      
    2. 如果你不想在配置文件中直接暴露账号和密码,你可以考虑使用环境变量来存储这些敏感信息。这样可以避免将敏感信息直接暴露在配置文件中。

    3. 检查你的Nacos服务器是否启用了鉴权功能。你可以在Nacos的配置文件(如application.propertiesapplication.yml)中查找与鉴权相关的配置项,例如nacos.core.auth.enabled。确保该配置项的值设置为true,以启用鉴权功能。

    2023-12-14 21:17:11
    赞同 展开评论 打赏
  • 记得轮转token 更新token 修改过期时间 删除那个服务的pod只要不修改hash值还是会有这个报错 不同环境中的不同版本2.2.1和2.2.2都有这种情况 ,此回答整理自钉群“Nacos社区群4”

    2023-12-14 07:44:25
    赞同 展开评论 打赏
问答分类:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
Nacos架构&原理 立即下载
workshop专场-微服务专场-开发者动手实践营-微服务-使用Nacos进行服务的动态发现和流量调度 立即下载
Nacos 启航,发布第一个版本, 云原生时代助力用户微服务平台建设 立即下载