Are there any docs on what we need to do? My users can’t connect no matter what. They are getting prompted to request permissions, it’s being automatically granted, but they can’t connect. And I am being asked to consent on every login.
I rolled back the OAuth API, I will add an option to manually select the new version instead. This was rolled back at 4:17PM, it was likely this that fixed the issue instead of that option. If you want to test the new API first run sudo pritunl get app.sso_azure_region to find what region is currently configured then run sudo pritunl set app.sso_azure_region '"global2"'. This can be reverted by changing it back to the original region.
Microsoft will likely discontinue that API in the future. The only significant errors I see in the logs are showing error_description=AADSTS65004:+User+declined+to+consent+to+access+the+app. It’s possible the way you were automatically granting the prompt wasn’t working.
With the API rolled back now I don’t see any noticeable correlation in the error count between the versions. I may still continue with the update sometime in the next few weeks. The sudo pritunl set app.sso_azure_region '"global2"' option will remain available to test the new API to find issues before it is rolled out. Additionally sudo pritunl set app.sso_azure_region '"global1"' has been added, this will force the OAuth v1 API.
You’re right. I tried checking “Access tokens (used for implicit flows)” again and wait a few minutes, and it still connects fine. So that definitely wasn’t the fix. And the 4:17PM time frame was definitely right before I had tested it successfully.
You will need to run sudo pritunl set app.sso_azure_region '"global1"' to keep the server on the OAuth v1. Even on the weekend there were a sufficient number of Azure requests while v2 was active to see that there weren’t any widespread issues. The new v2 OAuth will eventually be active by default.
I don’t think any changes have been made to the Azure single sign-on code between that release and the latest release. The primary changes in the v1.32 release is device authentication and the inclusion of a Python 3.9 interpreter.