私はこれを数日間(実際には3つ)苦労してきました。私はAAD B2CをWebアプリケーションとAPIに取り組んでいます。私はXamarinのモバイルプロジェクトでそれを稼働させることはできません。私はUWPプロジェクトを使って私の設定をテストしています。Windows 10マシンでトラブルシューティングするのが最も簡単なアプリです。私はVisual Studio 2015 Proを使用しています。Microsoft.Identity.Client 1.1.0プレビューを使用して誰でもAzure Active Directory B2Cを正常に実装しましたか?
私はMicrosoft.Identity.Client 1.1.0プレビューを使用しています。 私はこれを実装しようとする私の出発点として使用しました。今プロジェクトはコンパイルして起動します
https://github.com/Azure-Samples/active-directory-b2c-xamarin-native
。私はサインインをクリックすると、私の変数がある。ここ
[スクリーンショットの最初のイメージ]を、私はWebViewのを得るが、それは正確に右を見ていない.... ...
public class Constants
{
public static string ApplicationID = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
public static string[] Scopes = {""};
public static string SignUpSignInPolicy = "B2C_1_Standard_SignUpSignIn";
public static string ResetPasswordPolicy = "B2C_1_Standard_PasswordReset";
public static string EditProfilePolicy = "B2C_1_Standard_EditProfile";
public static string Authority = "https://login.microsoftonline.com/[MyTennantName].onmicrosoft.com/B2C_1_Standard_SignUpSignIn";
public static string AuthorityEditProfile = "https://login.microsoftonline.com/[MyTennantName].onmicrosoft.com/B2C_1_Standard_EditProfile";
public static string ApiEndpoint = "https://[MyTennantName].onmicrosoft.com/apiservices";
public static UIParent UiParent = null;
}
マイログインの方法は、私も自分のパスワードを入力することができます前に、
async void OnSignInSignOut(object sender, EventArgs e)
{
try
{
if (btnSignInSignOut.Text == "Sign in")
{
AuthenticationResult ar = await App.PCA.AcquireTokenAsync(Constants.Scopes, GetUserByPolicy(App.PCA.Users, Constants.SignUpSignInPolicy), Constants.UiParent);
UpdateUserInfo(ar);
UpdateSignInState(true);
}
else
{
foreach (var user in App.PCA.Users)
{
App.PCA.Remove(user);
}
UpdateSignInState(false);
}
}
catch (Exception ex)
{
// Checking the exception message
// should ONLY be done for B2C
// reset and not any other error.
if (ex.Message.Contains("AADB2C90118"))
OnPasswordReset();
// Alert if any exception excludig user cancelling sign-in dialog
else if (((ex as MsalException)?.ErrorCode != "authentication_canceled"))
await DisplayAlert($"Exception:", ex.ToString(), "Dismiss");
}
}
は、しかし、私は次のことを得る....です.... [スクリーンショットで第二の画像]
マイアプリカチオンの定義は次のようになります... [スクリーンショットの3番目の画像]
私のテナントを認識し、Microsoftアカウントでログインしようとしているとは思われません。テナント名とアプリケーションIDを二重にチェックしました。
私は、複数のリンクと、1枚の画像を投稿するのに十分な評判を持っていません。
また、Azure AD B2C APIアプリケーションは、Webアプリケーションで動作します。私は認証してAPIで動作するウェブアプリケーションを作成しました。
あなたの機関のエンドポイントは、彼らが不足している/ TFP/ – Saca