Не удается заставить Azure AD B2C работать с формами Xamarin - PullRequest
0 голосов
/ 18 октября 2018

У меня настроен клиент Azure AD B2C , который я буду использовать для авторизации пользователей из нашего приложения Xamarin Forms .Я настроил клиента Azure, добавив приложение, как показано на скриншоте.

enter image description here

Я создал политику SignUp-SignIn для приложения.

Я добавил пакет общего доступа Microsoft.Identity.Client в общий проект приложения и основал свой код на этом примере на Github , и я использую MSAL2.0.

Я использую следующие значения:

    public const string Tenant = "myappname.onmicrosoft.com";
    public static string ClientId = "123456-1dda-4dba-9913-wsedfcrft554";
    public static string SignUpSignInPolicy = "B2C_1_MyPolicyName";
    public static string AuthorityBase = $"https://login.microsoftonline.com/tfp/{Tenant}/";
    public static string Authority = $"{AuthorityBase}{SignUpSignInPolicy}";
    public static readonly string CustomRedirectUrl = $"msal{ClientId}://auth";

Это дает мне полномочия https://login.microsoftonline.com/tfp/myappname.onmicrosoft.com/B2C_1_MyPolicyName

В моем коде я создаюэкземпляр класса PublicClientApplication , позволяющий приложению взаимодействовать с клиентом Azure следующим образом.

return new PublicClientApplication(ApplicationConstants.ClientId, ApplicationConstants.Authority)
    {
        RedirectUri = ApplicationConstants.CustomRedirectUrl
    };

В настоящее время в клиенте настроены два пользователя, но когда я пытаюсь получитьСписок пользователей всегда пуст.

IEnumerable<IAccount> accounts = await AuthenticationService.PCA().GetAccountsAsync(); // always empty

Я пробовал несколько различных комбинаций для значения Authority , но ни одна из них не работает.

Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...