此方案在此tutorial之后在ADB2C上正常运行 我可以使用ADAL创建用户。 (这是context for the scenario)
我的目标是发送用户邀请(电子邮件)让他在我的appp上登机。
我发现在graph.microsoft.com(MS Graph而不是AD图表)上有一个可用于此目的的邀请管理器,如果你在上面创建用户,可能就是邀请被触发的方式B2C azure portal。
我是否应该按照与AD
相同的方式获取MS图表上的令牌 var authenticationContext = new AuthenticationContext(AuthString,
假);
var clientCred = new ClientCredential(ClientId,
ClientSecret);
var authenticationResult =
authenticationContext.AcquireTokenAsync(ResourceUrl,clientCred);
var token = authenticationResult.Result.AccessToken;
此时ResourceUrl指向https://graph.microsoft.com
这是我的OwinOpenID AuthenticationCodeReceived回调:
AuthorizationCodeReceived = async (context) =>
{
// get authentication context
string userObjectID = context.AuthenticationTicket.Identity.FindFirst("http://schemas.microsoft.com/identity/claims/objectidentifier").Value;
AuthenticationContext authContext = new AuthenticationContext($"https://login.microsoftonline.com/{AuthenticationHelper.Tenant}", new NaiveSessionCache(userObjectID));
ClientCredential credential = new ClientCredential(AuthenticationHelper.ClientId, AuthenticationHelper.AppKey);
AuthenticationResult result = await authContext.AcquireTokenAsync("https://graph.windows.net", credential);
// ----> Token used on the authorization header for AD user management and work properly
AuthenticationHelper.Token = result.AccessToken;
// Token for MS graph
ClientCredential MSCredential = new ClientCredential(AuthenticationHelper.MSClientId, AuthenticationHelper.MSAppKey);
AuthenticationResult resultMSGraph = await authContext.AcquireTokenAsync("https://graph.microsoft.com", MSCredential);
// ----> Token used on the authorization header for MS Graph and is not working !!
AuthenticationHelper.MSGraphToken = resultMSGraph.AccessToken;
},
感谢您的帮助
答案 0 :(得分:4)
Azure AD B2C不支持Microsoft Graph上的邀请管理器API。 目前,邀请管理器API旨在供企业/常规Azure AD租户邀请其他用户作为访客(请参阅Azure AD B2B Collaboration)。
Azure AD B2C UserVoice论坛中已有一个条目要求ability to send email invitation for new users to sign up。我建议您投票支持此条目,以帮助我们确定优先顺序,并及时了解最新动态。
在此期间,您必须自己实施,可以是简单的欢迎电子邮件,也可以是更复杂的"兑换代码"工作流强>