인증

AppStudio AppFramework는 지원 기기에서의 생체 인증을 통해 사용자를 인증하는 인증 플러그인을 제공합니다. 이 기능을 보안 저장소와 함께 사용하여 자격 증명, 토큰 또는 중요한 정보를 저장하고 접근할 수 있습니다. 이 기능을 사용하려면 먼저 다음과 같은 가져오기 문을 포함시켜야 합니다.

import ArcGIS.AppFramework.Authentication 1.0

이 기능의 예시로 ArcGIS AppStudio 또는 AppStudio 샘플 GitHub 리포지토리에서 제공되는 샘플 앱을 참고하세요.

생체 인증자

BiometricAuthenticator 컴포넌트는 iPhone 10 이상에서의 Face ID와 iOS, macOS, Android, Windows 플랫폼에서의 지문 스캔을 통한 인증을 지원합니다. 이 기능을 사용하려면 앱에 생체 인증이 활성화되어 있어야 합니다. 이 설정은 설정 > 기능에서 활성화할 수 있습니다.

지문 인증을 사용하려면 사용자의 기기에 지문 센서가 빌트인 되어있거나 이 기능을 기기에 활성화할 수 있는 휴대용 판독기가 있어야 하고, 지문이 기기에 등록되어있어야 합니다. 다음 코드 샘플에서는 supported, activated, errorMessage 속성을 사용하여 이 기능에 대한 지원 여부를 표시합니다. 인증자를 사용할 수 없으면 오류 메시지가 나타납니다.

Text {
    id: supportCheck
    text: BiometricAuthenticator.supported ? "Fingerprint supported" : "Fingerprint not supported"
}
Text {
    id: activeCheck
    text: BiometricAuthenticator.activated ? "Fingerprint activated" : "Fingerprint not activated"
    anchors.top: supportCheck.bottom
}
Text {
    id: errormessage
    text: BiometricAuthenticator.errorMessage
    anchors.top: activeCheck.bottom
}

BiometricAuthenticator 컴포넌트에는 기본 지문 인증 대화 상자를 표시하는 authenticate 메소드와 대화 상자의 인증 메시지를 설정하는 message 등록정보가 있습니다. 생체 인증을 사용하려면 message 등록정보를 설정하고 authenticate 메소드를 호출해야 합니다. authenticate를 호출하기 전에 message 등록정보가 설정되어 있어야 합니다 . 다음 코드 샘플에서는 authenticate 메소드 사용 방식과 지정된 메시지를 보여줍니다.

Component.onCompleted: {
    BiometricAuthenticator.message = "Authenticate to log into your account"
    BiometricAuthenticator.authenticate()
}

BiometricAuthenticator에는 인증 프로세스의 결과를 표시하는 두 가지 신호가 포함되어 있습니다. 인증에 성공하면 승인 신호를 내보내며 오류 또는 취소로 인해 인증에 실패하면 거부 신호와 함께 설명을 내보냅니다. 다음 코드 샘플에서는 세 가지 신호를 사용하여 스캔 결과를 각각의 가능한 오류 상태와 함께 반환합니다. 이 경우 사용자가 읽을 수 있는 짧은 문자열이 제공됩니다.

Text {
    id: status    anchors.top: errormessage.bottom
}
Connections {
    target: BiometricAuthenticator
    onAccepted: {
        status.text = "Success"
    }
    onRejected: {
        status.text = constructMessage(reason)    }
}
function constructMessage(reason) {
    var result = "";
    switch (reason)    {
    case 1:
        result = qsTr("Cancelled By User");
        break;
    case 2:
        result = qsTr("Invalid Credentials");
        break;
    case 3:
        result = qsTr("Not Configured");
        break;
    case 4:
        result = qsTr("User Fallback");
        break;
    case 5:
        result = qsTr("Permission Denied");
        break;
    case 6:
        result = qsTr("Biometric Not Supported");
        break;
    case 7:
        result = qsTr("Bad Capture");
        break;
    case 8:
        result = qsTr("Platform Not Supported");
        break;
    default:
        result = qsTr("Unknown");
    }
    return result;
}

본 항목
  1. 생체 인증자