Repository navigation
feat(temporal): add workload identity authentication - #560
Open
mzohaib-scale wants to merge 3 commits into
Open
mzohaib-scale wants to merge 3 commits into
mzohaib-scale wants to merge 3 commits into
Conversation
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
ZaidAfane3
approved these changes
Nov 1, 2026
mkinawy-scale
approved these changes
Nov 1, 2026
ZaidAfane3
approved these changes
Nov 1, 2026
muhammad-zoaib-scale
approved these changes
Nov 1, 2026
asherif0
approved these changes
Nov 1, 2026
swapnendu-scale
approved these changes
Nov 1, 2026
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Add renewable Azure Workload Identity authentication to the ADK Temporal client.
Why
VULN-2040 Stage B requires public Temporal callers to authenticate before namespace-scoped authorization can be enabled. Agents built on the ADK connect to Temporal through this client.
How
TEMPORAL_AUTH_SCOPEopts in. Tokens are acquired and refreshed through Azure Identity. Initial or expired credentials fail closed, while a transient refresh failure keeps the current valid token and retries once after the retry delay. Authenticated in-cluster connections settls=Falseso Istio remains the transport-security layer. Explicit TLS configuration and the scope-unset path are unchanged. The change is limited to hand-written code undersrc/agentex/lib/.Verification
tests/lib/test_temporal_auth.pypasses 9/9. Removing the plaintext TLS guard, or reverting the single-retry delay, makes the matching test fail.Cluster impact
None until an agent is released with this ADK version and deployed with
TEMPORAL_AUTH_SCOPE. Temporal authorization remains disabled.

Confidence Score: 5/5
The PR appears safe to merge; no new blocking issues were found.Summary
Adds opt-in Azure Workload Identity authentication and token refresh for Temporal clients.
Diagram
%%{init: {'theme': 'neutral'}}%% flowchart TD A[Connect to Temporal] --> B{TEMPORAL_AUTH_SCOPE set?} B -->|No| C[Keep existing connection options] B -->|Yes| D[Acquire Azure token] D -->|Missing or expired| E[Fail startup] D -->|Valid| F[Connect with token and preserve explicit TLS] F --> G[Refresh before expiry] G -->|Success| H[Replace client token] G -->|Failure| I[Keep token and retry after 30 seconds] H --> G I --> GReviews (2) · Last reviewed commit: "test(temporal): import TLSConfig from te..." · Reviewed by Greptile