Реестр не может авторизоваться после входа в keycloak - PullRequest
0 голосов
/ 09 марта 2019

Я запускаю Keycloak с помощью docker compose, вот мой файл:

version: '2'
services:
  keycloak:
    image: jboss/keycloak:4.8.3.Final
    command: ["-b", "0.0.0.0", "-Dkeycloak.migration.action=import", "-Dkeycloak.migration.provider=dir", "-Dkeycloak.migration.dir=/opt/jboss/keycloak/realm-config", "-Dkeycloak.migration.strategy=OVERWRITE_EXISTING", "-Djboss.socket.binding.port-offset=1000"]
    volumes:
      - ./realm-config:/opt/jboss/keycloak/realm-config
    environment:
      - KEYCLOAK_USER=admin
      - KEYCLOAK_PASSWORD=admin
      - DB_VENDOR=h2
    ports:
      - 9080:9080
      - 9443:9443
      - 10990:10990

Затем я запускаю реестр таким же образом, с этим конфигом:

version: '2'
services:
    jhipster-registry:
        image: jhipster/jhipster-registry:v4.1.1
        volumes:
            - ./central-server-config:/central-config
        # When run with the "dev" Spring profile, the JHipster Registry will
        # read the config from the local filesystem (central-server-config directory)
        # When run with the "prod" Spring profile, it will read the configuration from a Git repository
        # See https://www.jhipster.tech/microservices-architecture/#registry_app_configuration
        environment:
            - _JAVA_OPTIONS=-Xmx512m -Xms256m
            - SPRING_PROFILES_ACTIVE=dev,swagger,oauth2
            - SPRING_SECURITY_USER_PASSWORD=admin
            - JHIPSTER_REGISTRY_PASSWORD=admin
            - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_TYPE=native
            - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_SEARCH_LOCATIONS=file:./central-config/localhost-config/
            # - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_TYPE=git
            # - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_URI=https://github.com/jhipster/jhipster-registry/
            # - SPRING_CLOUD_CONFIG_SERVER_COMPOSITE_0_SEARCH_PATHS=central-config
            # For keycloak to work, you need to add '127.0.0.1 keycloak' to your hosts file
            - SECURITY_OAUTH2_CLIENT_ACCESS_TOKEN_URI=http://localhost:9080/auth/realms/jhipster/protocol/openid-connect/token
            - SECURITY_OAUTH2_CLIENT_USER_AUTHORIZATION_URI=http://localhost:9080/auth/realms/jhipster/protocol/openid-connect/auth
            - SECURITY_OAUTH2_CLIENT_CLIENT_ID=jhipster-registry
            - SECURITY_OAUTH2_CLIENT_CLIENT_SECRET=jhipster-registry
            - SECURITY_OAUTH2_RESOURCE_USER_INFO_URI=http://localhost:9080/auth/realms/jhipster/protocol/openid-connect/userinfo
        ports:
            - 8761:8761

Теперь, когда я открываю этот URL: http://localhost:8761, Я перенаправляю на страницу входа в Keycloak, после успешного входа я получил Несанкционированная ошибка!

Что я пропустил?

Я прочитал этот вопрос но я не установил SSL и работаю на localhost.


Я нашел проблему и решение!Из-за этого я использовал http://localhost:9080/,, действительно, я должен добавить блокировку ключа в мой локальный файл / etc / hosts (127.0.0.1 localhost keycloak) и добавить http://keycloak:9080/ в файл составления реестра Docker, после того, какчто все работает нормально.

Я использовал докер реестра Jhipster и каждый раз, когда он проверял токен, он отправлял запрос своему локальному хосту!поэтому запросы не прошли, и я не смог войти.

...