NavigatorLogin: setStatus() Methode

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.

Die setStatus()-Methode der NavigatorLogin-Schnittstelle setzt den Login-Status eines föderierten Identitätsanbieters (IdP), wenn sie von der Ursprungs-Domain des IdP aufgerufen wird. Damit meinen wir, "ob irgendwelche Benutzer im aktuellen Browser beim IdP eingeloggt sind oder nicht". Diese Methode sollte von der IdP-Website nach einem Benutzer-Login oder -Logout aufgerufen werden.

Der Browser speichert diesen Zustand für jeden IdP; die FedCM API API verwendet ihn dann, um die Anzahl der Anfragen an den IdP zu reduzieren (da sie keine Zeit mit Anfragen nach Konten verschwenden muss, wenn keine Benutzer beim IdP eingeloggt sind). Sie mildert auch potenzielle Timing-Angriffe ab.

Siehe Update login status using the Login Status API für weitere Informationen über den FedCM-Login-Status.

Syntax

js
setStatus(status)

Parameter

status

Ein String, der den Login-Status darstellt, der für den IdP gesetzt werden soll. Mögliche Werte sind:

  • "logged-in": Der IdP hat mindestens ein Benutzerkonto angemeldet.
  • "logged-out": Alle Benutzerkonten des IdP sind derzeit abgemeldet.

Rückgabewert

Ein Promise, das mit undefined erfüllt wird.

Ausnahmen

SecurityError DOMException

Wird ausgelöst, wenn die aufrufende Domain sich nicht in einem Frame befindet, dessen gesamte Verschachtelungshierarchie gleich-Origin ist. Unabhängig davon, ob es aus dem Hauptframe, einem im Hauptframe eingebetteten <iframe> oder einem anderen <iframe>, das eine oder mehrere Ebenen tief in das erste <iframe> eingebettet ist, aufgerufen wird, müssen alle Ebenen der Verschachtelungshierarchie gleich-Origin sein, damit der Aufruf erfolgreich ist.

Beispiele

js
/* Set logged-in status */
navigator.login.setStatus("logged-in");

/* Set logged-out status */
navigator.login.setStatus("logged-out");

Spezifikationen

Specification
Federated Credential Management API
# dom-navigatorlogin-setstatus

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch