Erstellen einer fido2Authentication-Methode

Namespace: microsoft.graph

Erstellen Sie ein neues fido2AuthenticationMethod-Objekt für einen Benutzer. Diese API schließt die Registrierung eines FIDO2-Sicherheitsschlüssels (Passkey) im Rahmen der WebAuthn-Registrierungszeremonie ab.

Passkey-Registrierungsflow:

  1. Rufen Sie die creationOptions-Funktion auf, um WebAuthn-Anmeldeinformationserstellungsoptionen aus Microsoft Entra ID abzurufen.
  2. Verwenden Sie die zurückgegebenen Optionen, um neue Anmeldeinformationen im Browser oder authenticator mithilfe der WebAuthn-API zu erstellen.
  3. SENDEN Sie die resultierenden Anmeldeinformationen für den öffentlichen Schlüssel an diese API, um die Registrierung abzuschließen.

Hinweis

Diese API weist die folgenden bekannten Probleme auf:

Berechtigungen

Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) UserAuthMethod-Passkey.ReadWrite.All UserAuthenticationMethod.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Application UserAuthMethod-Passkey.ReadWrite.All UserAuthenticationMethod.ReadWrite.All

Wichtig

Für den delegierten Zugriff mithilfe von Geschäfts-, Schul- oder Unikonten, bei denen der angemeldete Benutzer auf einen anderen Benutzer wirkt, muss ihm eine unterstützte Microsoft Entra Rolle oder eine benutzerdefinierte Rolle zugewiesen werden, die die für diesen Vorgang erforderlichen Berechtigungen gewährt. Dieser Vorgang unterstützt die folgenden integrierten Rollen, die nur die geringsten Berechtigungen bereitstellen:

  • Authentifizierungsadministrator
  • Privilegierter Authentifizierungsadministrator

Wenn Benutzer ihre eigenen Authentifizierungsmethoden verwalten, fordert das System sie auf, die mehrstufige Authentifizierung (Multi-Factor Authentication, MFA) abzuschließen, wenn sie die letzte Authentifizierung vor mehr als 10 Minuten in der aktuellen Sitzung durchgeführt haben.

HTTP-Anforderung

Hinweis

Das Aufrufen des /me-Endpunkts erfordert einen angemeldeten Benutzer und daher eine delegierte Berechtigung. Anwendungsberechtigungen werden bei Verwendung des /me Endpunkts nicht unterstützt.

POST /users/{id}/authentication/fido2Methods
POST /me/authentication/fido2Methods

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über Authentifizierung und Autorisierung.
Content-Type application/json. Erforderlich.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung des fido2AuthenticationMethod-Objekts an.

Sie können die folgenden Eigenschaften angeben, wenn Sie eine fido2AuthenticationMethod erstellen.

Eigenschaft Typ Beschreibung
displayName Zeichenfolge Der Anzeigename des FIDO2-Sicherheitsschlüssels. Optional.
publicKeyCredential webauthnPublicKeyCredential Die Anmeldeinformationen für den öffentlichen WebAuthn-Schlüssel, die der Authentifikator erstellt hat. Base64URL-Codierung aller Binärdaten ohne Auffüllung, wie in RFC 4648 Abschnitt 5 definiert. Diese Codierung gilt für die Eigenschaften Credential ID, clientDataJSON und attestationObject . Erforderlich.

Antwort

Bei erfolgreicher Ausführung gibt die Methode den 201 Created Antwortcode und ein fido2AuthenticationMethod-Objekt im Antworttext zurück.

Beispiele

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

POST https://graph.microsoft.com/v1.0/users/99a1915f-70a7-4b67-9dca-64095b41be73/authentication/fido2Methods
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.fido2AuthenticationMethod",
  "displayName": "My security key",
  "publicKeyCredential": {
    "@odata.type": "#microsoft.graph.webauthnPublicKeyCredential",
    "id": "OEVEMkQzNTctNzNEMi00RjEzLTk5MjYtODdGNjFCMjRBMzQy",
    "response": {
      "@odata.type": "#microsoft.graph.webauthnAuthenticatorAttestationResponse",
      "clientDataJSON": "eyJ0eXBlIjoid2ViYXV0aG4uY3JlYXRlIiwiY2hhbGxlbmdlIjoiUVRVMU16TkROekF0TmtNM05pMDBOVFJETFVKRFEwWXRSVFJFTURaQ05UQkZSVFJFIiwib3JpZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwiY3Jvc3NPcmlnaW4iOmZhbHNlfQ",
      "attestationObject": "o2NmbXRkbm9uZWdhdHRTdG10oGhhdXRoRGF0YVikSZYN5YgOjGh0NBcPZHZgW4/krrmihjLHmVzzuoMdl2NdAAAAALraVWanqkAfvZZFYZpVEg0AIDhFRDJEMzU3LTczRDItNEYxMy05OTI2LTg3RjYxQjI0QTM0MqUBAgMmIAEhWCAMKJ7T4r8w5F6JGxJLJXNR0hV1MZF1aZ1F0pZXq5p5"
    },
    "clientExtensionResults": {
      "@odata.type": "#microsoft.graph.webauthnAuthenticationExtensionsClientOutputs"
    }
  }
}

Antwort

Das folgende Beispiel zeigt die Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.fido2AuthenticationMethod",
  "id": "73e4b2c6-8a2f-4d3e-9b1a-5c7d8e9f0a1b",
  "displayName": "My security key",
  "createdDateTime": "2026-04-20T10:15:30Z",
  "aaGuid": "de1e552d-db1d-4423-a619-566b625cdc84",
  "model": "Security Key NFC by Yubico",
  "attestationCertificates": [],
  "attestationLevel": "attested",
  "passkeyType": "deviceBound"
}