Получите учетные записи, в которые уже выполнен вход в MSAL (MAUI)C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Получите учетные записи, в которые уже выполнен вход в MSAL (MAUI)

Сообщение Anonymous »

Реализация MSAL в приложении MAUI.
Процесс входа создается с использованием приведенного ниже фрагмента.

Код: Выделить всё

authenticationResult = await _identityClient
.AcquireTokenInteractive(AppSettings.MSALScopes)
.WithUseEmbeddedWebView(true)
.ExecuteAsync();
При первом открытии приложения пользователь увидит страницу входа в систему MS. После входа в систему пользователь будет перенаправлен на «Главную страницу» (HomePage).
Когда вошедший в систему пользователь закроет и снова откроет приложение, он должен быть непосредственно перенаправлен на « Главная страница» (Домашняя страница). Для этого у меня есть код ниже, чтобы проверить, вошел ли пользователь уже в систему.

Код: Выделить всё

public AuthService()
{
_identityClient  = PublicClientApplicationBuilder.Create(AppSettings.MSALAzureClientId)
.WithRedirectUri(AppSettings.MSALRedirectURI)
.WithCacheOptions(CacheOptions.EnableSharedCacheOptions)
.Build();
}

public async Task IsSignedInAsync()
{
try
{
_account = (await _identityClient?.GetAccountsAsync())?.FirstOrDefault();
var authenticationResult = await _identityClient.AcquireTokenSilent(AppSettings.MSALScopes, _account).ExecuteAsync();
return authenticationResult != null;
}
catch
{
return false;
}
}
Но когда я вызываю метод IsSignedInAsync, GetAccountsAsync возвращает 0 учетных записей даже после того, как пользователь уже вошел в систему.
Как могу ли я получить учетные записи, в которые уже выполнен вход?
Как сохранить и кэшировать учетные записи в MAUI с помощью MSAL.NET (для Android и iOS).

Подробнее здесь: https://stackoverflow.com/questions/787 ... -msal-maui
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»