Closed Cha7lie closed 3 years ago
Thanks, @Cha7lie for mentioning this. I try to figure out what goes wrong. On my end, I also use MFA with my account and haven't experienced it yet.
In 1.5.1 there was a functionality implemented, that the authentication should restart when something is wrong with the current token. Do you already see a message saying that it started a new device auth flow?
When I activate the presence switch, it continually loops round with the below. The only way to stop this is to restart Homebridge. It's giving me the error that I need to interact for MFA, but no message to start a new device auth flow, as in previous versions. When I used 1.5.0 it worked fine, with the issue only occurring directly after moving to 1.5.1.
[2/5/2021, 9:06:32 AM] [Presence Indicator]
[2/5/2021, 9:06:32 AM] [Presence Indicator] Access token expired. Token: mytoken
[2/5/2021, 9:06:32 AM] [Presence Indicator] Retrieving new access token using existing refresh token mytoken
[2/5/2021, 9:06:32 AM] [Presence Indicator] Retrieving new access token using existing refresh token mytoken
[2/5/2021, 9:06:32 AM] [Presence Indicator] Response:
[2/5/2021, 9:06:32 AM] [Presence Indicator] {
error: 'interaction_required',
error_description: "AADSTS50078: Presented multi-factor authentication has expired due to policies configured by your administrator, you must refresh your multi-factor authentication to access '00000003-0000-0000-c000-000000000000'.\r\n" +
'Trace ID: b05fc017-0e93-4feb-8657-90f9cbb48a00\r\n' +
'Correlation ID: 48f2dc69-a113-44d7-b82e-cd5af9fbc39b\r\n' +
'Timestamp: 2021-02-05 09:06:32Z',
error_codes: [ 50078 ],
timestamp: '2021-02-05 09:06:32Z',
trace_id: 'b05fc017-0e93-4feb-8657-90f9cbb48a00',
correlation_id: '48f2dc69-a113-44d7-b82e-cd5af9fbc39b',
suberror: 'basic_action'
}
[2/5/2021, 9:06:32 AM] [Presence Indicator]
Seems that there is no error captured, so I have changed one part of the logic. Would you be able to test out the latest beta version?
Just added the latest beta [1.5.1-beta.5400626] and I get exactly the same behaviour as before, but an extra log line with the following:
[2/5/2021, 10:24:52 AM] [Presence Indicator] Error: undefined
New beta 🙂 - hope logging now gives something
It's now just repeating the error status of needing to refresh MFA in the error log line.
[2/5/2021, 10:36:42 AM] [Presence Indicator] Response:
[2/5/2021, 10:36:42 AM] [Presence Indicator] {
error: 'interaction_required',
error_description: "AADSTS50078: Presented multi-factor authentication has expired due to policies configured by your administrator, you must refresh your multi-factor authentication to access '00000003-0000-0000-c000-000000000000'.\r\n" +
'Trace ID: 9854023e-05b4-42ad-a71c-1a28c7878a00\r\n' +
'Correlation ID: ad360940-6f7d-423e-90b2-d8e1ddbfca35\r\n' +
'Timestamp: 2021-02-05 10:36:43Z',
error_codes: [ 50078 ],
timestamp: '2021-02-05 10:36:43Z',
trace_id: '9854023e-05b4-42ad-a71c-1a28c7878a00',
correlation_id: 'ad360940-6f7d-423e-90b2-d8e1ddbfca35',
suberror: 'basic_action'
}
[2/5/2021, 10:36:42 AM] [Presence Indicator]
[2/5/2021, 10:36:42 AM] [Presence Indicator] Error: AADSTS50078: Presented multi-factor authentication has expired due to policies configured by your administrator, you must refresh your multi-factor authentication to access '00000003-0000-0000-c000-000000000000'.
Trace ID: 9854023e-05b4-42ad-a71c-1a28c7878a00
Correlation ID: ad360940-6f7d-423e-90b2-d8e1ddbfca35
Timestamp: 2021-02-05 10:36:43Z
Think I have spotted the issue. Working on the fix.
New beta available to test. Hopefully, this one fixes it.
Just tried it, and it's fixed the issue! Went through the token expire lines as above, then it tried to refresh and then gave me the line:
[2/5/2021, 11:12:58 AM] [Presence Indicator] No existing refresh token. Starting new device code flow...
Which enabled me to re-auth. Thank you so much for working so quickly on this!
Thanks! I will now release the main version.
Is there a way to force re-auth? Since 1.5.1 I'm getting an error:
[2/4/2021, 1:22:54 PM] [Presence Indicator] Access token expired. Token: mytoken.....ExpiresAt: 2021-01-30T08:57:33.359Z
I've tried @latest and removing/re/adding the plugin but still get the same error.
Looks like the issue is caused by needing authenticator. However prior to 1.5.1 manually authenticating worked well with MS Auth app.