WebAccountProvider.IsSystemProvider 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取值,该值描述给定 ID 提供程序是否支持系统范围的身份验证令牌。
public:
property bool IsSystemProvider { bool get(); };
bool IsSystemProvider();
public bool IsSystemProvider { get; }
var boolean = webAccountProvider.isSystemProvider;
Public ReadOnly Property IsSystemProvider As Boolean
属性值
Boolean
bool
如此 如果 WebAccountProvider 允许系统范围的身份验证令牌。 否则 为 False。
Windows 要求
设备系列 |
Windows 10, version 1803 (在 10.0.17134.0 中引入)
|
API contract |
Windows.Foundation.UniversalApiContract (在 v6.0 中引入)
|
示例
下面是设备范围令牌检索的这一特殊情况的示例。
// create a WebTokenRequest with device-wide authentication
WebTokenRequest CreateWebTokenRequestForAad(WebAccountProvider provider){
// check if the ID provider allows system-wide scope, and construct token request accordingly:
return new WebTokenRequest(
provider,
provider.IsSystemProvider ? "systemInfo" : "userInfo",
"<InsertClientID>");
)
}
// retrieve a device-wide auth token for Azure Active Directory
string GetAadToken() {
var provider = WebAuthenticationCoreManager.FindSystemAccountProviderAsync(
"https://login.microsoft.com","organizations");
var request = CreateWebTokenRequestForAad(provider);
var result = WebAuthenticationCoreManager.GetTokenSilentlyAsync(request);
// handle the request result in the usual way.
if (result.ResponseStatus == WebTokenRequestStatus.Success){
return result.ResponseData[0].Token;
} else {
throw new Exception(result.ResponseError.ErrorMessage);
}
}
注解
设备令牌功能适用于在用户登录设备之前服务需要连接到云资源的情况 (例如,在开箱即用的体验中,系统中心Configuration Manager (SCCM) 策略必须立即应用) 。 只有第一方 ID 提供程序 (Xbox、MSA、AAD) 允许设备范围的令牌;其他 ID 提供程序则不这样做。