다음을 통해 공유


UserConsentVerifier.CheckAvailabilityAsync 메서드

정의

Microsoft Passport PIN, Windows Hello 또는 지문 판독기 같은 인증 디바이스를 사용할 수 있는지 여부를 확인합니다.

public:
 static IAsyncOperation<UserConsentVerifierAvailability> ^ CheckAvailabilityAsync();
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<UserConsentVerifierAvailability> CheckAvailabilityAsync();
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<UserConsentVerifierAvailability> CheckAvailabilityAsync();
function checkAvailabilityAsync()
Public Shared Function CheckAvailabilityAsync () As IAsyncOperation(Of UserConsentVerifierAvailability)

반환

가용성 검사 작업의 결과를 설명하는 UserConsentVerifierAvailability 값입니다.

특성

설명

다음 예제에서는 인증 디바이스가 현재 사용자에 대해 지원되는지 확인하고 결과를 설명하는 메시지를 반환하는 메서드를 보여 줍니다.

public async Task<string> CheckDeviceAvailability()
{
    string returnMessage;

    // Check the availability of device authentication.
    var ucvAvailability = await Windows.Security.Credentials.UI.UserConsentVerifier.CheckAvailabilityAsync();

    switch (ucvAvailability)
    {
        case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.Available:
            returnMessage = "Authentication device is available.";
            break;
        case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.DeviceBusy:
            returnMessage = "Authentication device is busy.";
            break;
        case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.DeviceNotPresent:
            returnMessage = "No authentication device found.";
            break;
        case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.DisabledByPolicy:
            returnMessage = "Authentication device verification is disabled by policy.";
            break;
        case Windows.Security.Credentials.UI.UserConsentVerifierAvailability.NotConfiguredForUser:
            returnMessage = "Please go to Account Settings to set up a PIN or other advanced authentication.";
            break;
        default:
            returnMessage = "Authentication device is currently unavailable.";
            break;
    }

    return returnMessage;
}
winrt::Windows::Foundation::IAsyncOperation<winrt::hstring> CheckDeviceAvailability()
{
    winrt::hstring returnMessage;

    // Check the availability of device authentication.
    auto ucvAvailability = co_await Windows::Security::Credentials::UI::UserConsentVerifier::CheckAvailabilityAsync();

    switch (ucvAvailability)
    {
        case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::Available:
            returnMessage = L"Authentication device is available.";
            break;
        case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::DeviceBusy:
            returnMessage = L"Authentication device is busy.";
            break;
        case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::DeviceNotPresent:
            returnMessage = L"No authentication device found.";
            break;
        case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::DisabledByPolicy:
            returnMessage = L"Authentication device verification is disabled by policy.";
            break;
        case winrt::Windows::Security::Credentials::UI::UserConsentVerifierAvailability::NotConfiguredForUser:
            returnMessage = L"Please go to Account Settings to set up a PIN or other advanced authentication.";
            break;
        default:
            returnMessage = L"Authentication device is currently unavailable.";
            break;
    }

    co_return returnMessage;
}

적용 대상

추가 정보