Ответ 1
Да, это правильно. Вам нужно будет использовать другой орган, URL которого состоит из арендатора и имени политики, как показано здесь:
private static string Tenant = "yourTenant.onmicrosoft.com";
public static string PolicySignUpSignIn = "b2c_1_susi";
public static string PolicyEditProfile = "b2c_1_edit_profile";
private static string BaseAuthority = "https://login.microsoftonline.com/tfp/{tenant}/{policy}/oauth2/v2.0/authorize";
public static string Authority = BaseAuthority.Replace("{tenant}", Tenant).Replace("{policy}", PolicySignUpSignIn);
public static string AuthorityEditProfile = BaseAuthority.Replace("{tenant}", Tenant).Replace("{policy}", PolicyEditProfile);
Кстати, этот образец, хотя для .NET Desktop показано, как использовать политики редактировать профиль и пароль reset: active-directory-b2c-dotnet-desktop, см., в частности, метод EditProfileButton_Click, фактор приобретения токен (интерактивно) вызовет диалог для редактирования профиля:
AuthenticationResult authResult = await App.PublicClientApp.AcquireTokenAsync(App.ApiScopes, GetUserByPolicy(App.PublicClientApp.Users, App.PolicyEditProfile), UIBehavior.SelectAccount, string.Empty, null, App.AuthorityEditProfile);