Zum Hauptinhalt springen

Stille Revalidierung

PrepareInfo-Attribute
AttributTypErforderlichBeschreibung
externalUserIdStringBenutzerkennung in Ihrem System. Wird vor der Übertragung automatisch mit SHA-256 gehasht und niemals im Klartext gesendet.
Eine Stille Revalidierung starten
Schritt 1initializeSDK implementieren

Erstellen Sie eine neue UnicoSDK-Klasse/-Objekt mit einer statischen initializeSDK-Methode, die die UnicoSDK-Instanz zurückgibt und dabei den context sowie ein UnicoSDKConfig mit Ihrem sdkKey, bundleId und environment empfängt. Bewahren Sie die zurückgegebene Instanz auf — sie wird später benötigt, um startSilentValidation aus Java aufzurufen.

Beim App-Start aufrufen

UnicoSDK.initializeSDK muss so früh wie möglich beim App-Start aufgerufen werden (z. B. in Application.onCreate). Ein späterer Aufruf verringert die Verarbeitungszeit im Hintergrund und erhöht die Wahrscheinlichkeit unentschlossener Ergebnisse der Authentifizierung.

UnicoSDK.initializeSDK(
context,
UnicoSDKConfig(
sdkKey = "your_sdk_key",
bundleId = "your_bundle_id",
environment = Environment.UAT
)
)
Schritt 2startSilentValidation implementieren

Verknüpfen Sie nach initializeSDK die bereits laufende Erfassung mit dem identifizierten Nutzer, indem Sie startSilentValidation mit einer PrepareInfo aufrufen, die die externalUserId enthält.

val prepareInfo = PrepareInfo(
externalUserId = "external_user_id"
)

UnicoSDK.startSilentValidation(prepareInfo)
.onSuccess { result -> /* ... */ }
.onFailure { error -> /* ... */ }

Wenn die Validierung am Anfang des Flows stattfindet, zum Beispiel beim Login, warten Sie auf den onSuccess-Callback, bevor Sie mit Schritt 3 fortfahren.

Schritt 3 — Prozess erstellen und authentifizieren

Erstellen Sie bei laufender Validierung den Verifizierungsprozess, um die Authentifizierung abzuschließen. Siehe API-Referenz ▸ API ▸ Prozess erstellen.

Fügen Sie im Request-Body dieselbe externalUserId ein, die in Schritt 2 in der PrepareInfo gesendet wurde — dadurch kann das Backend die Prozesserstellung mit der bereits laufenden Validierung korrelieren.

curl -X POST https://api.id.unico.app/processes/v1 \
-H "Authorization: Bearer $TOKEN" \
-H "APIKEY: $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject": {
"duiType": 1,
"code": "12345678909",
"name": "Luke Skywalker",
"gender": "M",
"birthDate": "2000-05-20",
"email": "[email protected]",
"phone": "5519725570707"
},
"useCase": "Onboarding",
"externalUserId": "external_user_id",
"imageBase64": "/9j/4AAQSkZJR..."
}'

Die Antwort enthält das Feld silentAuth.result mit dem Ergebnis der Authentifizierung:

{
"id": "80371b2a-3ac7-432e-866d-57fe37896ac6",
"status": 3,
"silentAuth": {
"result": "yes"
}
}
FeldTypBeschreibung
silentAuth.resultstringyes oder no — siehe mögliche Werte unten.
silentAuth.result — mögliche Werte
WertBedeutung
yesAuthentifizierung genehmigt, Nutzer mit ausreichender Sicherheit erkannt, keine zusätzliche Erfassung erforderlich.
noUnzureichende Daten für eine stille Genehmigung. Es wird empfohlen, über Biometrie (Selfie) oder eine andere alternative Methode zu authentifizieren.