Closed shweaver-MSFT closed 3 years ago
Thanks shweaver-MSFT for opening a Pull Request! The reviewers will test the PR and highlight if there is any merge conflict or changes required. If the PR is approved we will proceed to merge the pull request 🙌
Fixes #8
PR Type
What kind of change does this PR introduce?
What is the current behavior?
MsalProvider does not currently support incremental consent. Requesting new scopes after the initial login will require the user to fully authenticate again.
In addition, the
WithScopes
parameter being passed in with the Graph requests is not being handled when the request is authenticated viaMsalProvider.AuthenticateRequestAsync
. The scopes are ignored currently and not used to actually make requests,What is the new behavior?
With these changes, the MsalProvider will now use any specified alternate scopes with the graph request, and it will only ask for the user's password when consenting, instead of requiring full re-login.
I've also added a SemaphoreSlim to the MsalProvider and WindowsProvider to protect the provider from being bombarded with auth requests simultaneously, potentially causing throttling exceptions.
Lastly, I added a small fix to the PersonView to clear out PersonDetails and prevent stale data from showing up when one user logs out and another logs in.
PR Checklist
Please check if your PR fulfills the following requirements:
Other information
https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-permissions-and-consent#incremental-and-dynamic-user-consent