Missing wamcompat_id_token in WAM case
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- csharp
- Domain
- authentication, cli
Research direction
Reproduce the failure with devtunnel user login using an account with an active Azure Subscription, then start at src/Tunnel/Src/CLI/Authentication/UserManager.cs:560 and follow the callers at UserManager.cs:271 and Commands/UserCommands.cs:123. Trace the WAM/MSAL response handling to identify why the token is missing; done means this login path completes without the reported exception.
Written by the indexing model from the issue text.
Description
When I try to login with devtunnel user login, and select an account who has an active Azure Subscription, I got the error below.
Running version
devtunnel --version
Tunnel CLI version: 1.0.1401+3d725ee539
Tunnel service URI : https://global.rel.tunnels.api.visualstudio.com/
Tunnel service version : 1.0.1427.13095 (2733b94cde; 2025-04-02 01:00:45Z)
Tunnel service cluster : usw2
MSAL: [RuntimeBroker] unknown_broker_error Unknown Status: Unexpected
Context: Missing wamcompat_id_token in WAM case
Tag: 0x20714047 (error code 0) (internal error code 544292935)
MSAL: Exception type: Microsoft.Identity.Client.MsalServiceException
, ErrorCode: unknown_broker_error
HTTP StatusCode 0
CorrelationId abecfb39-1e47-4ff0-a8e5-75d3bd1bbd9b
To see full exception details, enable PII Logging. See https://aka.ms/msal-net-logging
at Microsoft.Identity.Client.Platforms.Features.RuntimeBroker.WamAdapters.HandleResponse(AuthResult authResult, AuthenticationRequestParameters authenticationRequestParameters, ILoggerAdapter logger, String errorMessage)
at Microsoft.Identity.Client.Platforms.Features.RuntimeBroker.RuntimeBroker.SignInInteractivelyAsync(AuthenticationRequestParameters authenticationRequestParameters)
at Microsoft.Identity.Client.Platforms.Features.RuntimeBroker.RuntimeBroker.AcquireTokenInteractiveAsync(AuthenticationRequestParameters authenticationRequestParameters, AcquireTokenInteractiveParameters acquireTokenInteractiveParameters)
at Microsoft.Identity.Client.Internal.Broker.BrokerInteractiveRequestComponent.FetchTokensAsync(CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.InteractiveRequest.FetchTokensFromBrokerAsync(String, CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.InteractiveRequest.GetTokenResponseAsync(CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.InteractiveRequest.ExecuteAsync(CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.RequestBase.<>c__DisplayClass11_1.<<RunAsync>b__1>d.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.Identity.Client.Utils.StopwatchService.MeasureCodeBlockAsync(Func`1)
at Microsoft.Identity.Client.Internal.Requests.RequestBase.RunAsync(CancellationToken )
Unhandled exception: MSAL.NetCore.4.61.3.0.MsalServiceException:
ErrorCode: unknown_broker_error
Microsoft.Identity.Client.MsalServiceException: Unknown Status: Unexpected
Context: Missing wamcompat_id_token in WAM case
Tag: 0x20714047 (error code 0) (internal error code 544292935)
at Microsoft.Identity.Client.Platforms.Features.RuntimeBroker.WamAdapters.HandleResponse(AuthResult authResult, AuthenticationRequestParameters authenticationRequestParameters, ILoggerAdapter logger, String errorMessage)
at Microsoft.Identity.Client.Platforms.Features.RuntimeBroker.RuntimeBroker.SignInInteractivelyAsync(AuthenticationRequestParameters authenticationRequestParameters)
at Microsoft.Identity.Client.Platforms.Features.RuntimeBroker.RuntimeBroker.AcquireTokenInteractiveAsync(AuthenticationRequestParameters authenticationRequestParameters, AcquireTokenInteractiveParameters acquireTokenInteractiveParameters)
at Microsoft.Identity.Client.Internal.Broker.BrokerInteractiveRequestComponent.FetchTokensAsync(CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.InteractiveRequest.FetchTokensFromBrokerAsync(String, CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.InteractiveRequest.GetTokenResponseAsync(CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.InteractiveRequest.ExecuteAsync(CancellationToken)
at Microsoft.Identity.Client.Internal.Requests.RequestBase.<>c__DisplayClass11_1.<<RunAsync>b__1>d.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.Identity.Client.Utils.StopwatchService.MeasureCodeBlockAsync(Func`1)
at Microsoft.Identity.Client.Internal.Requests.RequestBase.RunAsync(CancellationToken )
at Microsoft.Identity.Client.ApiConfig.Executors.PublicClientExecutor.ExecuteAsync(AcquireTokenCommonParameters, AcquireTokenInteractiveParameters, CancellationToken)
at Microsoft.DevTunnels.Cli.Authentication.UserManager.LoginAadUserAsync(LoginOptions options, DeviceCodeCallback deviceCodeCallback, CancellationToken cancellation) in /__w/1/s/src/Tunnel/Src/CLI/Authentication/UserManager.cs:line 560
at Microsoft.DevTunnels.Cli.Authentication.UserManager.LoginAsync(LoginOptions options, DeviceCodeCallback deviceCodeCallback, CancellationToken cancellation) in /__w/1/s/src/Tunnel/Src/CLI/Authentication/UserManager.cs:line 271
at Microsoft.DevTunnels.Cli.Commands.UserCommands.LoginAsync(LoginOptions options, CancellationToken cancellation) in /__w/1/s/src/Tunnel/Src/CLI/Commands/UserCommands.cs:line 123
- Dominant language
- C#
- Stars
- 515
- Forks
- 54
- Avg merge
- 1h 52m
- Merged PRs (30d)
- 1
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/dev-tunnels
-
Web forwarding drops HTTP/2 response trailers, which breaks gRPC (HTTP/2 itself now negotiates fine)Open
Difficulty 4/5 3-5 days Newbie friendliness 45/100
microsoft/dev-tunnels#687 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 55/100
microsoft/dev-tunnels#659 ·
-
devtunnel create routing flaps between near-equidistant clusters, silently creating cross-cluster duplicatesMay be free again @plequere-ms claimed this 123 days ago, and no pull request is open. Open
microsoft/dev-tunnels#642 · 2 comments · 1 assignee ·
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
microsoft/dev-tunnels#608 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
microsoft/dev-tunnels#567 · 1 comment ·
All issues in microsoft/dev-tunnels
Similar issues
-
area:jobads-cv BE mvp P2
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
klasolsson81/jobbliggaren#2099 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
0 - Backlog Bug
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
BrighterCommand/Brighter#4581 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
Esri/calcite-dotnet-toolkit#30 · 1 reaction ·
-
kind:docs simplification size:S status:todo
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
elsa-workflows/elsa-foundation#2604 ·
Maintainers usually reply within 1 day