You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot连接Docker部署的Neo4j遇认证异常求助

解决Spring Boot连接Docker部署的Neo4j时的认证错误

你遇到的AuthenticationException核心原因是Neo4j服务端的认证状态与客户端的认证配置不匹配,结合你的环境配置,可通过以下步骤修复:

1. 为Docker中的Neo4j设置固定初始密码

Neo4j 4.x默认启用认证,未指定密码时容器会生成随机密码,导致你配置的password无效。修改docker-compose.yml,添加环境变量设置固定密码:

version: '3.1'

services:
  neo4j:
    image: neo4j:4.1.9
    container_name: neo4j-container
    ports:
      - "7474:7474"
      - "7687:7687"
    environment:
      - NEO4J_AUTH=neo4j/password

修改后重启容器:

docker-compose down && docker-compose up -d

2. 修正Spring Boot的Neo4j配置属性

Spring Boot 3.x中,Neo4j官方推荐使用spring.neo4j前缀配置,旧前缀spring.data.neo4j可能存在兼容性问题,修改application.yaml:

spring:
  neo4j:
    uri: bolt://localhost:7687
    authentication:
      username: neo4j
      password: password

3. 适配Neo4j Driver与服务端版本

Spring Boot 3.1默认依赖Neo4j Driver 5.x,而你的Neo4j服务端是4.1.9,Driver 5.x与Neo4j 4.x存在认证机制兼容性差异。在pom.xml中指定兼容的Driver版本:

<properties>
    <java.version>17</java.version>
    <neo4j-java-driver.version>4.4.11</neo4j-java-driver.version>
</properties>

验证步骤

  1. 访问http://localhost:7474,用账号neo4j、密码password登录Neo4j浏览器,确认能正常进入
  2. 重启Spring Boot应用,测试连接是否正常

内容的提问来源于stack exchange,提问作者Chris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 07:30:32