我正在创建一个UWP应用程序,它根据登录用户显示某些数据。 用户在Windows Azure中登录,计算机帐户也加入了Azure。 我启用了"帐户信息"应用清单中的功能。
我正在尝试使用用户类找出用户数据,就像在线的几个例子中提到的那样:
private async void GetAllUserData()
{
var users = await User.FindAllAsync();
foreach (var user in users)
{
var authenticationStatus = user.AuthenticationStatus;
var nonRoamableId = user.NonRoamableId;
var provider = await user.GetPropertyAsync(KnownUserProperties.ProviderName);
var accountName = await user.GetPropertyAsync(KnownUserProperties.AccountName);
var displayName = await user.GetPropertyAsync(KnownUserProperties.DisplayName);
var domainName = await user.GetPropertyAsync(KnownUserProperties.DomainName);
var principalName = await user.GetPropertyAsync(KnownUserProperties.PrincipalName);
var firstName = await user.GetPropertyAsync(KnownUserProperties.FirstName);
var guestHost = await user.GetPropertyAsync(KnownUserProperties.GuestHost);
var lastName = await user.GetPropertyAsync(KnownUserProperties.LastName);
var sessionInitiationProtocolUri = await user.GetPropertyAsync(KnownUserProperties.SessionInitiationProtocolUri);
var userType = user.Type;
}
}
我可以从用户对象获得的唯一属性是:
所有其他属性仍为空。根据我的理解,当我登录到Windows Azure时,至少主体名称应该有一个值。
我做错了什么 - 换句话说 - 我需要做什么才能获得帐户信息?
答案 0 :(得分:0)
启用"企业身份验证"在我的应用清单中,UPN填充了principalName变量。
我知道,这不是应用程序的真正身份验证工作,但就我的目的而言,在Windows中验证UPN就足够了。
有关向应用添加Azure身份验证的详细信息,我找到了以下链接: