Учетные данные Neo4J не работают для приложения Spring Boot, созданного JHipster - PullRequest
0 голосов
/ 02 мая 2020

Когда я развернул свое приложение JHipster в Heroku и подключился к экземпляру GrapheneDB Neo4J (версия 3.5.17), приложению не удается подключиться к экземпляру Neo4J. Я попытался воспроизвести ошибку локально, думая, что это связано с несовпадением версий, поскольку локально Docker версия Neo4J - 4.0.

Однако я локализовал ошибку при наличии / отсутствии учетных данных в любой версии Neo4J.

Рабочая версия имеет эту docker-compose.yml запись в файле:

    environment:
      - NEO4J_AUTH=none

и эту запись в application.yml:

org:
  neo4j:
    driver:
      uri: bolt://localhost:7687

Эта версия может подключаться , После ввода учетных данных записи выглядят следующим образом: docker-compose.yml:

    environment:
      - NEO4J_AUTH=myapplication/myapplication

и application.yml:

org:
  neo4j:
    driver:
      uri: bolt://localhost:7687
      authentication:
        username: myapplication
        password: myapplication

Эта версия не может подключиться. Как правильно установить учетные данные в Spring Boot, а также образ neo4j docker? Есть что-то еще, что я пропускаю?

При подключении к экземпляру GrapheneDB с моего локального компьютера возникает та же ошибка, поэтому я подозреваю, что проблема в конфигурации драйвера. Некоторые поисковые запросы упоминают org.neo4j.driver.username вместо org.neo4j.driver.authentication.username, но я пробовал оба, и результат тот же.

1 Ответ

2 голосов
/ 02 мая 2020

Оказывается, я был введен в заблуждение документацией Neo4J, в которой указано, что шифрование включено по умолчанию. Все, что мне нужно было сделать:

org.neo4j.driver.config.encrypted=true

или в сочетании, в YAML:

org:
  neo4j:
    driver:
      uri: bolt://localhost:7687
      authentication:
        username: myapplication
        password: myapplication
      config:
        encrypted: true

Для полной конфигурации см .: https://neo4j.com/developer/driver-spring-boot-starter/

...