monitoring: probe IAM at /healthz; document the OIDC userinfo path

/v1/iam is guarded — a dashboard probe there shows IAM as down when it is up.
/healthz answers 200 unauthenticated. Userinfo is /v1/iam/oauth/userinfo in
the deployed route table; there is no /v1/iam/userinfo.

Co-authored-by: Hanzo Dev <[email protected]>
This commit is contained in:
2026-07-27 11:43:22 -07:00
co-authored by Hanzo Dev
parent af41c70a23
commit 2e11985646
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -1174,7 +1174,7 @@ HANZO_COMMERCE_WEBHOOK_SECRET=...
- **Type**: `oauth` (NOT `oidc` — Casdoor JWT tokens have iss claims that openid-client rejects)
- **Key settings**: `idToken: false`, `checks: ["state"]`, custom `token.request` function
- **Token endpoint**: `${serverUrl}/oauth/token`
- **Userinfo endpoint**: `${serverUrl}/v1/iam/userinfo`
- **Userinfo endpoint**: `${serverUrl}/v1/iam/oauth/userinfo`
- **Console env**: `IAM_SERVER_URL=https://hanzo.id`, `IAM_CLIENT_ID=hanzo-console-client-id`
### Casdoor Applications (in iam-init-data configmap)
+1 -1
View File
@@ -132,7 +132,7 @@ export default function MonitoringPage() {
const infraServices = [
{ name: "PostgreSQL", endpoint: `${apiBase}/health` },
{ name: "Redis Cache", endpoint: `${apiBase}/health` },
{ name: "IAM (hanzo.id)", endpoint: "https://iam.hanzo.ai/v1/iam/health" },
{ name: "IAM (hanzo.id)", endpoint: "https://iam.hanzo.ai/healthz" },
]
for (const svc of infraServices) {