Configure built-in auth for Azure Container Apps #2205
Merged
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.
Purpose
Fixes #2181
This PR configures built-in auth for the new default deployment target, Azure Container Apps.
It also configures CORS correctly, based on Matt's old PR with a few fixes, so that logout works as expected.
This uses a currently undocumented way of connecting the token storage container, which uses managed identity instead of keys. I've asked the team about timeline for documenting that feature. Note that built-in auth for ACA is considered a preview feature.
One potential issue: if you've got an app with built-in auth deployed already, then our frontend code will only logout the user from MSAL, not from built-in auth, because it checks for an MSAL token first. We could potentially change that to be based on whether the ".auth/me" endpoint returned anything.
Does this introduce a breaking change?
When developers merge from main and run the server, azd up, or azd deploy, will this produce an error?
If you're not sure, try it out on an old environment.
Does this require changes to learn.microsoft.com docs?
This repository is referenced by this tutorial
which includes deployment, settings and usage instructions. If text or screenshot need to change in the tutorial,
check the box below and notify the tutorial author. A Microsoft employee can do this for you if you're an external contributor.
Type of change
Code quality checklist
See CONTRIBUTING.md for more details.
python -m pytest
).python -m pytest --cov
to verify 100% coverage of added linespython -m mypy
to check for type errorsruff
andblack
manually on my code.