Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Core] Add announcement for WAM-based login #25416

Merged
merged 9 commits into from
Mar 2, 2023
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,14 @@
<head>
<meta charset="utf-8" />
<title>Login failed</title>
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
</style>
</head>
<body>
<h4>Authentication failed</h4>
<h3>Authentication failed</h3>
<p>$error: $error_description. ($error_uri)</p>
<p>You can log an issue at <a href="https://github.com/azure/azure-cli/issues">Azure CLI GitHub Repository</a> and we will assist you in resolving it.</p>
</body>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,32 @@
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="refresh" content="10;url=https://docs.microsoft.com/cli/azure/">
<meta http-equiv="refresh" content="120;url=https://docs.microsoft.com/cli/azure/">
jiasli marked this conversation as resolved.
Show resolved Hide resolved
<title>Login successfully</title>
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

code {
font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
display: inline-block;
background-color: rgb(242, 242, 242);
padding: 12px 16px;
margin: 8px 0px;
}
</style>
</head>
<body>
<h4>You have logged into Microsoft Azure!</h4>
<p>You can close this window, or we will redirect you to the <a href="https://docs.microsoft.com/cli/azure/">Azure CLI documentation</a> in 10 seconds.</p>
<h3>You have logged into Microsoft Azure!</h3>
<p>You can close this window, or we will redirect you to the <a href="https://docs.microsoft.com/cli/azure/">Azure CLI documentation</a> in 2 minutes.</p>
jiasli marked this conversation as resolved.
Show resolved Hide resolved
<h3>Announcements</h3>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a clever usage of MSAL Python's success_template feature. Good job. I guess MSAL shall better officially document this parameter/behavior, then. :-)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One more thing. Currently, the broker is only available on Windows. Shall we keep using the old success template when Azure CLI is running on non-Windows platform, and only use the new one on Windows?

The conditional, per-platform guidance is inevitable in the long run, because we will probably need that pattern in the near future when the broker on other platforms becomes available.

<p>[Windows only] Starting in May 2023, Azure CLI will authenticate using the <a href="https://learn.microsoft.com/en-us/windows/uwp/security/web-account-manager">Web Account Manager</a> (WAM) broker by default.</p>
jiasli marked this conversation as resolved.
Show resolved Hide resolved
<p>To help us collect feedback on the new login experience, you may opt-in to use WAM by running the following command:</p>
jiasli marked this conversation as resolved.
Show resolved Hide resolved
<code>
az config set core.allow_broker=true<br>
az account clear<br>
az login
Comment on lines +28 to +30
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jiasli can we simplify this bloc of code?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Out of curiosity, @jiasli, is the "az account clear" necessary? My understanding is, after enabling broker, the subsequent "az foo bar" may fail and then Azure CLI's preexisting error message will guide end user to do an "az login" anyway.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

after enabling broker, the subsequent "az foo bar" may fail and then Azure CLI's preexisting error message will guide end user to do an "az login" anyway.

Relying on the error impairs user experience, right. 🙂

My consideration is that we want users to run az account clear so that the existing MSAL cache is purged, and make sure no credentials are left behind.

</code>
</body>
</html>