`az login` cannot open web browser on WSL2 + Ubuntu 22.04
Describe the bug
az login cannot open web browser on WSL2 + Ubuntu 22.04.
Upstream issues:
- https://github.com/microsoft/WSL/issues/8892
- https://github.com/AzureAD/microsoft-authentication-library-for-python/issues/625
To Reproduce
With xdg-utils installed:
$ sudo apt install xdg-utils
$ az login
A web browser has been opened at https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize. Please continue the login in the web browser. If no web browser is available or if the web browser fails to open, use device code flow with `az login --use-device-code`.
/usr/bin/xdg-open: 882: x-www-browser: not found
/usr/bin/xdg-open: 882: firefox: not found
/usr/bin/xdg-open: 882: iceweasel: not found
/usr/bin/xdg-open: 882: seamonkey: not found
/usr/bin/xdg-open: 882: mozilla: not found
/usr/bin/xdg-open: 882: epiphany: not found
/usr/bin/xdg-open: 882: konqueror: not found
/usr/bin/xdg-open: 882: chromium: not found
/usr/bin/xdg-open: 882: chromium-browser: not found
/usr/bin/xdg-open: 882: google-chrome: not found
/usr/bin/xdg-open: 882: www-browser: not found
/usr/bin/xdg-open: 882: links2: not found
/usr/bin/xdg-open: 882: elinks: not found
/usr/bin/xdg-open: 882: links: not found
/usr/bin/xdg-open: 882: lynx: not found
/usr/bin/xdg-open: 882: w3m: not found
xdg-open: no method available for opening 'https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize?client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46&...'
Without xdg-utils installed:
$ sudo apt remove xdg-utils
$ az login
A web browser has been opened at https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize. Please continue the login in the web browser. If no web browser is available or if the web browser fails to open, use device code flow with `az login --use-device-code`.
gio: https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize?client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46&...: Operation not supported
Additional context Windows Terminal supports Ctrl+Click to open hyperlinks, so the user can Ctrl+Click the URL shown in the error to open the web browser and the rest steps work as usual.
Some workarounds are provided in https://github.com/microsoft/WSL/issues/8892 such as installing wslu.
Thank you for opening this issue, we will look into it.
Workaround
Windows Terminal supports Ctrl+Click to open URLs, so the easiest workaround is to Ctrl+Click the URL shown in the error to open the web browser.
If you are not using Windows Terminal, you may manually copy the URL into a web browser to open it.
I have the same issue. @yonzhan any ideas on how to fix or the root cause? Windows 11, wsl2, Ubuntu 22.04.3 LTS
Same issue using the latest DevBox env. I think the devbox envs setup recently all share the config Win11 WSL2 Ubuntu 22.04.4 LTS as default. So the many developers using devbox may encounter this issue. Do we have any plan fix for this issue? @jiasli @yonzhan Thanks in advance!
This is not an Azure CLI issue. It is recommended to report to https://github.com/microsoft/WSL/issues/8892.
This is not an Azure CLI issue. It is recommended to report to microsoft/WSL#8892.
Thanks! Can be solved by these steps https://github.com/microsoft/WSL/issues/8892#issuecomment-1772972570
Workaround
Windows Terminal supports Ctrl+Click to open URLs, so the easiest workaround is to Ctrl+Click the URL shown in the error to open the web browser.
If you are not using Windows Terminal, you may manually copy the URL into a web browser to open it.
Thanks @jiasli, this workaround "manually copy the URL to web browser" works for me! I'm using WSL and ctrl+click the link can open browser but got "Sorry, but we’re having trouble signing you in. AADSTS90023: Unsupported 'prompt' value."
Remove the : after select_account from URL while opening in your browser.
I'm using WSL and ctrl+click the link can open browser but got "Sorry, but we’re having trouble signing you in. AADSTS90023: Unsupported 'prompt' value."
Remove the
:afterselect_accountfrom URL while opening in your browser.
This is caused by a recent Windows Terminal bug https://github.com/microsoft/terminal/issues/17495.
