Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using https, an error was found #22

Open
reherin opened this issue Nov 11, 2024 · 0 comments
Open

Using https, an error was found #22

reherin opened this issue Nov 11, 2024 · 0 comments

Comments

@reherin
Copy link

reherin commented Nov 11, 2024

Hello, I use orthanc-auth-service-24.9.1\minimal-setup\docker-compose.yml to start the system. After I enabled https, logged into orthanc, and requested https://localhost/orthanc/ui/api/configuration, I got an error: {
"Details" : "List of strings expected in field: permissions",
"HttpError" : "Bad Request",
"HttpStatus" : 400,
"Message" : "Bad file format",
"Method" : "GET",
"OrthancError" : "Bad file format",
"OrthancStatus" : 15,
"Uri" : "/ui/api/configuration"
}
, after testing, it was caused by the configuration of "Authorization": {
"WebServiceRootUrl": "https://orthanc-auth-service:8000" in the docker-compose.yml file. How can I solve this problem?
Here is the complete docker-compose.yml file:

# SPDX-FileCopyrightText: 2022 - 2024 Orthanc Team SRL <[email protected]>
#
# SPDX-License-Identifier: CC0-1.0
version: "3"
services:
  nginx:
    image: orthancteam/orthanc-nginx:24.9.0
    depends_on: [orthanc, orthanc-auth-service, keycloak]
    restart: unless-stopped
#    ports: ["80:80"]
# if setting ENABLE_HTTPS: "true" env var, uncomment the following 4 lines and comment the line with 'ports: ["80:80"]'
    ports: ["443:443", "4242:4242"]
    volumes:
      - C:/Users/Administrator/crt.pem:/etc/nginx/tls/crt.pem
      - C:/Users/Administrator/key.pem:/etc/nginx/tls/key.pem
    environment:
      ENABLE_ORTHANC: "true"
      ENABLE_KEYCLOAK: "true"
      ENABLE_ORTHANC_TOKEN_SERVICE: "false"
      ENABLE_HTTPS: "true"
# to use OHIF-plugin: you don't need the OHIF reverse proxy
      ENABLE_OHIF: "true"


  orthanc:
    image: orthancteam/orthanc:24.8.3
    volumes:
      - orthanc-storage:/var/lib/orthanc/db
      # - C:/Users/Administrator/crt.pem:/etc/nginx/tls/crt.pem
      # - C:/Users/Administrator/key.pem:/etc/nginx/tls/key.pem
#      - D:/ca/orthanc-https.pem:/etc/nginx/tls/orthanc-https.pem
    depends_on: [orthanc-db]
    restart: unless-stopped
    environment:
      STONE_WEB_VIEWER_PLUGIN_ENABLED: "true"
      DICOM_WEB_PLUGIN_ENABLED: "true"
      # to use OHIF-plugin:  make sure to have a "OHIF" config and use "dicom-web" source
      OHIF_PLUGIN_ENABLED: "false"
      ORTHANC__POSTGRESQL__HOST: "orthanc-db"
      ORTHANC__POSTGRESQL__TRANSACTION_MODE: "ReadCommitted"
      VERBOSE_ENABLED: "true"
      VERBOSE_STARTUP: "true"
      ENABLE_HTTPS: "false"
      ORTHANC_JSON: |
        {
          "Name": "Orthanc",
          "OrthancExplorer2": {
            "IsDefaultUI": true,
            "UiOptions": {
              "EnableShares": true,
              "DefaultShareDuration": 0,
              "ShareDurations": [0, 7, 15, 30, 90, 365],
              "EnableOpenInOhifViewer3": true,
              // to use OHIF-plugin:  use http://localhost/orthanc/ohif/
              //"OhifViewer3PublicRoot": "http://localhost/orthanc/ohif/"
              "OhifViewer3PublicRoot": "https://localhost/ohif/"
              //"OhifViewer3PublicRoot": "https://localhost/orthanc/ohif/"
        
            },
            "Tokens" : {
              "InstantLinksValidity": 3600,
              "ShareType": "ohif-viewer-publication"
            },
            "Keycloak" : {
              "Enable": true,
              "Url": "https://localhost/keycloak/",
              "Realm": "orthanc",
              "ClientId": "orthanc"
            }
          },
          "AuthenticationEnabled": false,     
          "Authorization": {
            "WebServiceRootUrl": "https://orthanc-auth-service:8000",
            //"WebServiceRootUrl": "https://localhost:8000/",
            "WebServiceUsername": "admin",
            "WebServicePassword": "change-me",
            "StandardConfigurations" : [
              "osimis-web-viewer",
              "stone-webviewer",
              "orthanc-explorer-2",
              "ohif"
            ],
            "TokenHttpHeaders" : [ "api-key" ],
            "CheckedLevel": "studies"
          },
          "DicomWeb": {
            "Enable": true,
            "PublicRoot": "/orthanc/dicom-web/"
          }
          , "OHIF": {
            "DataSource": "dicom-web",
            "RouterBasename": "/orthanc/ohif/"
          }
        
        }


  orthanc-auth-service:
    image: orthancteam/orthanc-auth-service:24.9.0
    # always disable port mapping in production !!!
    # ports: ["8000:8000"]
    # permissions can be customized in the permissions.json file
    volumes:
      - ./permissions.jsonc:/orthanc_auth_service/permissions.json
    depends_on: [keycloak]
    restart: unless-stopped
    environment:
      SECRET_KEY: "change-me-I-am-a-secret-key"
      ENABLE_KEYCLOAK: "true"
#      ENABLE_KEYCLOAK_API_KEYS: "true"
#      # to enable the permissions edition UI in OE2, you need to provide a KEYCLOAK_CLIENT_SECRET
#      KEYCLOAK_CLIENT_SECRET: "change-me-I-am-a-secret-you-get-in-keycloak-admin-ui"
      KEYCLOAK_CLIENT_SECRET: "TxOYLTicpl1iZIO0XgWzSE0jzmA40mb5"
      PUBLIC_ORTHANC_ROOT: "https://localhost/orthanc/"
      PUBLIC_LANDING_ROOT: "https://localhost/orthanc/ui/app/token-landing.html"
      # to use OHIF-plugin:  make sure to use https://localhost/orthanc/ohif/
#      PUBLIC_OHIF_ROOT: "https://localhost/ohif/"
      PUBLIC_OHIF_ROOT: "https://localhost/orthanc/ohif/"
      USERS: |
        {
          "share-user": "change-me"
        }


  orthanc-db:
    image: postgres:14
    restart: unless-stopped
    volumes: ["orthanc-db:/var/lib/postgresql/data"]
    environment:
      POSTGRES_HOST_AUTH_METHOD: "trust"


# to use OHIF-plugin: you don't need this container
  ohif:
    image: orthancteam/ohif-v3:24.9.0
#  uncomment if you want to customize ohif configuration
#    volumes:
#      - ./ohif-app-config.js:/usr/share/nginx/html/app-config.js
    restart: unless-stopped




  keycloak:
    image: orthancteam/orthanc-keycloak:24.9.0
    depends_on: [keycloak-db]
    restart: unless-stopped
    environment:
      KC_HOSTNAME_ADMIN_URL: "https://localhost/keycloak"
      KC_HOSTNAME_URL: "https://localhost/keycloak"
      KEYCLOAK_ADMIN: "admin"
      KEYCLOAK_ADMIN_PASSWORD: "change-me"
      KC_DB: "postgres"
      KC_DB_URL: "jdbc:postgresql://keycloak-db:5432/keycloak"
      KC_DB_USERNAME: "keycloak"
      KC_DB_PASSWORD: "keycloak"
      KC_HOSTNAME: "https://localhost/keycloak"


  keycloak-db:
    image: postgres:14
    restart: unless-stopped
    volumes: ["keycloak-db:/var/lib/postgresql/data"]
    environment:
      POSTGRES_PASSWORD: "keycloak"
      POSTGRES_USER: "keycloak"
      POSTGRES_DB: "keycloak"


volumes:
  orthanc-storage:
  orthanc-db:
  keycloak-db:

This is the error screenshot:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant