Wie verwende ich FIDO U2F, um Benutzern die Authentifizierung mit meiner Website zu ermöglichen?
Mit all dem Aufsehen rund um die FIDO U2F-Spezifikation möchte ich FIDO U2F testweise auf einem Prüfstand implementieren, um für die bevorstehende Einführung der endgültigen Spezifikation bereit zu sein.
Bisher habe ich einen FIDO U2F-Sicherheitsschlüssel von Yubico und die in Chrome installierte FIDO U2F-Erweiterung (Universal 2nd Factor). Ich habe es auch geschafft, den Sicherheitsschlüssel so einzurichten, dass er mit meinem Google-Login funktioniert.
Now, ich bin mir nicht sicher, wie ich dieses Zeug für meine eigene Site verwenden soll. Ich habe die Github-Seite von Google nach dem U2F-Projekt durchsucht und deren @ überprüfweb app front-end. Es sieht sehr einfach aus (nur JavaScript). Ist die Implementierung von Second Factor Auth mit FIDO so einfach wie die Implementierung einiger JavaScript-Aufrufe? Für die Registrierung im Beispiel scheint nur Folgendes zu geschehen:
var registerRequest = {
appId: enrollData.appId,
challenge: enrollData.challenge,
version: enrollData.version
};
u2f.register([registerRequest], [], function (result) {
if (result.errorCode) {
document.getElementById('status')
.innerHTML = "Failed. Error code: " + result.errorCode;
return;
}
document.location = "/enrollFinish"
+ "?browserData=" + result.clientData
+ "&enrollData=" + result.registrationData
+ "&challenge=" + enrollData.challenge
+ "&sessionId=" + enrollData.sessionId;
});
Aber wie kann ich das für eine Implementierung selbst nutzen? Kann ich den Rückruf von diesem Methodenaufruf für die Benutzerregistrierung verwenden?