Поделиться через


WebAuthenticationCoreManager.FindSystemAccountProviderAsync Метод

Определение

Перегрузки

FindSystemAccountProviderAsync(String)

Асинхронно пытается найти поставщика веб-учетной записи для проверки подлинности на уровне устройства.

FindSystemAccountProviderAsync(String, String)

Асинхронно пытается найти поставщика веб-учетной записи для проверки подлинности на уровне устройства.

FindSystemAccountProviderAsync(String, String, User)

Асинхронно пытается найти поставщика веб-учетной записи для проверки подлинности на уровне устройства.

FindSystemAccountProviderAsync(String)

Асинхронно пытается найти поставщика веб-учетной записи для проверки подлинности на уровне устройства.

public:
 static IAsyncOperation<WebAccountProvider ^> ^ FindSystemAccountProviderAsync(Platform::String ^ webAccountProviderId);
/// [Windows.Foundation.Metadata.Overload("FindSystemAccountProviderAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<WebAccountProvider> FindSystemAccountProviderAsync(winrt::hstring const& webAccountProviderId);
[Windows.Foundation.Metadata.Overload("FindSystemAccountProviderAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<WebAccountProvider> FindSystemAccountProviderAsync(string webAccountProviderId);
function findSystemAccountProviderAsync(webAccountProviderId)
Public Shared Function FindSystemAccountProviderAsync (webAccountProviderId As String) As IAsyncOperation(Of WebAccountProvider)

Параметры

webAccountProviderId
String

Platform::String

winrt::hstring

Идентификатор поставщика веб-учетных записей, который требуется найти.

Возвращаемое значение

Асинхронная операция поиска. При успешном завершении содержит объект WebAccountProvider , представляющий найденного поставщика веб-учетных записей.

Атрибуты

Требования к Windows

Семейство устройств
Windows 10, version 1803 (появилось в 10.0.17134.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v6.0)

Применяется к

FindSystemAccountProviderAsync(String, String)

Асинхронно пытается найти поставщика веб-учетной записи для проверки подлинности на уровне устройства.

public:
 static IAsyncOperation<WebAccountProvider ^> ^ FindSystemAccountProviderAsync(Platform::String ^ webAccountProviderId, Platform::String ^ authority);
/// [Windows.Foundation.Metadata.Overload("FindSystemAccountProviderWithAuthorityAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<WebAccountProvider> FindSystemAccountProviderAsync(winrt::hstring const& webAccountProviderId, winrt::hstring const& authority);
[Windows.Foundation.Metadata.Overload("FindSystemAccountProviderWithAuthorityAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<WebAccountProvider> FindSystemAccountProviderAsync(string webAccountProviderId, string authority);
function findSystemAccountProviderAsync(webAccountProviderId, authority)
Public Shared Function FindSystemAccountProviderAsync (webAccountProviderId As String, authority As String) As IAsyncOperation(Of WebAccountProvider)

Параметры

webAccountProviderId
String

Platform::String

winrt::hstring

Идентификатор поставщика веб-учетных записей, который требуется найти.

authority
String

Platform::String

winrt::hstring

Полномочия поставщика веб-учетных записей для поиска.

Возвращаемое значение

Асинхронная операция поиска. При успешном завершении содержит объект WebAccountProvider , представляющий найденного поставщика веб-учетных записей.

Атрибуты

Требования к 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) разрешают маркеры для всего устройства; другие поставщики удостоверений этого не делают.

См. также раздел

Применяется к

FindSystemAccountProviderAsync(String, String, User)

Асинхронно пытается найти поставщика веб-учетной записи для проверки подлинности на уровне устройства.

public:
 static IAsyncOperation<WebAccountProvider ^> ^ FindSystemAccountProviderAsync(Platform::String ^ webAccountProviderId, Platform::String ^ authority, User ^ user);
/// [Windows.Foundation.Metadata.Overload("FindSystemAccountProviderWithAuthorityForUserAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<WebAccountProvider> FindSystemAccountProviderAsync(winrt::hstring const& webAccountProviderId, winrt::hstring const& authority, User const& user);
[Windows.Foundation.Metadata.Overload("FindSystemAccountProviderWithAuthorityForUserAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<WebAccountProvider> FindSystemAccountProviderAsync(string webAccountProviderId, string authority, User user);
function findSystemAccountProviderAsync(webAccountProviderId, authority, user)
Public Shared Function FindSystemAccountProviderAsync (webAccountProviderId As String, authority As String, user As User) As IAsyncOperation(Of WebAccountProvider)

Параметры

webAccountProviderId
String

Platform::String

winrt::hstring

Идентификатор поставщика веб-учетных записей, который требуется найти.

authority
String

Platform::String

winrt::hstring

Полномочия поставщика веб-учетных записей для поиска.

user
User

Пользователь, связанный с поставщиком учетных записей интернета, который требуется найти.

Возвращаемое значение

Асинхронная операция поиска. При успешном завершении содержит объект WebAccountProvider , представляющий найденного поставщика веб-учетных записей.

Атрибуты

Требования к Windows

Семейство устройств
Windows 10, version 1803 (появилось в 10.0.17134.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v6.0)

Применяется к