Ошибка MSALErrorDomain -42101 - MSALErrorMismatchedUser - PullRequest
0 голосов
/ 10 декабря 2018

Один из наших пользователей в приложении для iOS видит следующую ошибку:

MSALErrorDomain error -42101 - MSALErrorMismatchedUser

В настоящее время мы не можем воспроизвести проблемувнутренне и пытались понять, что может вызвать эту проблему.

До сих пор мы знаем, что эта ошибка возникает при вызове acquireTokenSilent.

Только для нашего приложенияподдерживает вход в одну учетную запись в любое время, а выход из системы / удаление приложения не решают проблему.Один и тот же пользователь может без проблем использовать другую учетную запись, аутентифицированную через MSAL.

Мы используем MSAL довольно простым способом, когда пользователь сначала выполняет интерактивный вход в систему через acquireToken, а затем любой запрос на получение данных.приложение использует acquireTokenSilent для того, чтобы получить accessToken, который затем передается на запрос к бэкэнду.При выходе из системы мы удаляем все учетные записи из MSALPublicClientApplication.

Мы не используем совместное использование цепочки для ключей.

Любое понимание того, какой сценарий может вызывать эту проблему, будет высоко оценено.

1 Ответ

0 голосов
/ 11 декабря 2018

Проблема заключалась в том, что в какой-то момент в процессе разработки мы изменили URL-адрес, используемый для инициализации объекта MSALAuthority.

Это изменение, по-видимому, препятствует правильному удалению данных цепочки для ключей после удаленияMSALAccount из экземпляра MSALPublicClientApplication.

Удаление всех данных цепочки для ключей для нашего приложения с использованием найденного кода здесь решило проблему.

...