Skip to content

Managed-auth External JWT Signer created without network-id/managed tags on OpenZiti v2.0.0 controllers #4124

Description

@ahazeltonNF

Summary

When core-management provisions a network's managed-auth External JWT Signer, the create request correctly includes tags ({any-tag}), but the resulting signer on the controller has empty tags (tags: {}). The signer is otherwise created successfully.

Operation HTTP Tags after (via GET by id)
CREATE with tags 201 {} — dropped
PATCH with tags 200 persisted ✅
PUT with tags 200 persisted ✅

1. Create with tags → 201

curl -k -sS -L -X POST "$API/external-jwt-signers" \
  -H "zt-session: $ZT_SESSION" -H 'Content-Type: application/json' \
  -d '{
        "name": "claude-tags-diagnostic",
        "enabled": true,
        "issuer": "https://example/issuer",
        "audience": "example-aud",
        "jwksEndpoint": "https://example/.well-known/jwks.json",
        "claimsProperty": "sub",
        "useExternalId": false,
        "tags": { "managed": "NetFoundry", "network-id": "00000000-0000-0000-0000-000000000000" }
      }'
# -> {"data":{...,"id":"<ID>"},"meta":{}}

2. Read by id (detail endpoint) → tags are EMPTY

curl -k -sS -L -H 'Accept: application/json' \
  -H "zt-session: $ZT_SESSION" \
  "$API/external-jwt-signers/<ID>"
# -> "...","tags":{},"..."     <-- dropped despite being in the create body

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions