codecentric / codecentric/spring-boot-admin

SSL in management URL

Open
#4,291 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

status: waiting-for-triage type: bug
Dominant language
Java
Stars
12.9k
Forks
3.1k
Avg merge
19h 1m
Merged PRs (30d)
61

Description

Spring Boot Admin Server information

  • Version:
    Spring boot (spring-boot-dependencies): 3.4.5
    Spring Cloud (spring-cloud-dependencies): 2024.0.1
    Spring Admin (spring-boot-admin-dependencies): 3.4.5

  • Webflux or Servlet application:
    servlet application

Client information

  • Spring Boot versions:
    Spring boot (spring-boot-dependencies): 3.4.5
    Spring Cloud (spring-cloud-dependencies): 2024.0.1
    Spring Admin (spring-boot-admin-dependencies): 3.4.5

  • Used discovery mechanism:
    eureka

  • Webflux or Servlet application:
    servlet application

Description

Hi Everyone

I got a Gateway (Eureka) and a Spring Boot Admin Server running in a Docker Network.

Now i got my Gateway (Server Properties) configured with ssl and listening on Port 443 but my Actuator endpoints (configured with management) are without ssl and listening on Port 80. ()

Gateway config:

server:
  port: 443
  ssl:
    enabled: true
    bundle: server
....
management:
  server:
    port: 80
    ssl:
      enabled: false

The spring boot admin client creates the management url correctly (takes port 80) but it does not apply ssl.enabled=false

In the Admin Server Journal i see my gateway registrytion with following:

{
    "registration": {
        "name": "GATEWAY-SERVICE",
        "managementUrl": "https://172.18.0.16:80/actuator",
        "healthUrl": "https://172.18.0.16:80/actuator/health",
        "serviceUrl": "https://172.18.0.16:443",
        "source": "discovery",
        "metadata": {
            "prometheus.path": "/actuator/prometheus",
            "management.port": "80"
        }
    }
}

managementUrl & healthUrl should not be with https.
I think I could override the Url with spring.boot.client.management-url as quickfix

If you need more information please ask.
Thx

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the servlet setup with the Gateway configuration shown, including server SSL on port 443 and management SSL disabled on port 80. Trace how the Eureka registration builds managementUrl and healthUrl, then verify that both use http while serviceUrl remains https and run the relevant project tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring-boot
Domain
backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.