2017-08-09 4 views
15

私はAzure AD B2C用にMSAL JSを実装しました。 次のステップでは、ユーザーがプロフィールを編集できるようにします。私はプロファイルの編集のための新しいポリシーを作成しました。 しかし、そこにユーザーをリダイレクトする方法はありますか?ログインメソッド/トークンメソッドを取得するだけです。 権限を別のポリシーに設定しようとしました。その後、正しいページにリダイレクトしますが、スコープ内のエラーについて不平を言って、トークンをローカルで壊します。Azure MSAL JS:プロフィールを編集するには?

editProfile() { 
    this.userAgentApp.authority = this.policyEditProfile; 
    this.userAgentApp.loginRedirect(); 
} 

ASP.NETのコード例は、明示的にeditProfileポリシーIDを設定するオプションがあります。このようなhttps://docs.microsoft.com/en-gb/azure/active-directory-b2c/active-directory-b2c-devquickstarts-web-dotnet-susi#update-code-to-use-your-tenant-and-policies

感じがMSAL.JSから欠落していると私は手動でURLを作るために持っている、それが正しいです?

答えて

6

はい、これは正しいです。あなたはhereを示すように、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デスクトップ用編集プロファイルを使用する方法を示しているがそしてパスワードポリシーをリセットします。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); 
+0

感謝を!私はMSAL.JSで試しましたが、この例外が発生しますか? this.userAgentApp.acquireTokenPopup(authSettings.scopes、this.policyEditProfile).then((accessToken)=> { this.setAuthenticated(accessToken); }、(エラー)=> { console.error(エラー) } AADB2C90055:リクエストで指定された 'openid profile'のスコープは、 'https://example.com/calendar.read'などのリソースを指定する必要があります。 相関ID:8a022666-3400-4d7d-A847-f8dc4dc49452 タイムスタンプ:2017年8月13日23:42:10Z : – Boland

+0

INVALID_REQUEST私がログインするときと同じスコープを使用していますなぜ私は他の必要です。プロファイルを編集するスコープ? – Boland

関連する問題