Commit 18455b6e authored by Dimitrios Gogos's avatar Dimitrios Gogos
Browse files

feat: update registration URL for Keycloak client to use admin base URL

parent 81d25fa7
Loading
Loading
Loading
Loading
Loading
+2 −1
Changes for src/portal_service/api/api_clients/routes.py: 2 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -77,8 +77,9 @@ async def list_api_clients(

@api_clients_router.get("/connection", dependencies=[Depends(require_app_provider)])
async def connection(provisioning: ProvisioningDep, settings: SettingsDep) -> ConnectionResponse:
    # Built from the issuer: token_endpoint may be the cluster-internal address.
    return ConnectionResponse(
        token_endpoint=provisioning.oidc.token_endpoint,
        token_endpoint=f"{provisioning.oidc.issuer}/protocol/openid-connect/token",
        oeg_base_url=settings.oeg.public_base_url or None,
    )

+1 −1
Changes for src/portal_service/api/dependencies.py: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -293,7 +293,7 @@ def get_api_client_service(
        clients=SqlApiClientRepository(session),
        entitlements=SqlApiClientEntitlementRepository(session),
        registry=KeycloakClientRegistry(
            registration_url=f"{oidc.issuer}/clients-registrations/default",
            registration_url=f"{oidc.admin_base_url}/realms/{oidc.realm}/clients-registrations/default",
            provisioner_token=token,
        ),
        roles=KeycloakProductRoles(admin=admin, oeg_client_uuid=uuid),
+1 −0
Changes for tests/unit/test_api_client_routes.py: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ def app(monkeypatch: pytest.MonkeyPatch, s: Setup) -> FastAPI:
        monkeypatch,
        AUTH__SECURITY_MODE="jwt",
        OEG__PUBLIC_BASE_URL="https://oeg.example.com",
        OIDC__TOKEN_ENDPOINT="http://keycloak:8080/realms/oop/protocol/openid-connect/token",
        **PROVISIONING_ENV,
    )
    from portal_service.main import create_app