WebAccountProvider.IsSystemProvider Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, определяющее, поддерживает ли данный поставщик удостоверения маркеры проверки подлинности на уровне системы.
public:
property bool IsSystemProvider { bool get(); };
bool IsSystemProvider();
public bool IsSystemProvider { get; }
var boolean = webAccountProvider.isSystemProvider;
Public ReadOnly Property IsSystemProvider As Boolean
Значение свойства
bool
Значение true , если 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);
}
}
Комментарии
Функция маркера устройства предназначена для случаев, когда службе необходимо подключиться к облачным ресурсам, прежде чем пользователь когда-либо войдет в устройство (например, в готовых интерфейсах, где есть политики System Center Configuration Manager (SCCM), которые необходимо применить сразу же). Только сторонние поставщики удостоверений (Xbox, MSA, AAD) разрешают маркеры для всего устройства; другие поставщики удостоверений этого не делают.