application: addKey

Namespace: microsoft.graph

Fügen Sie einer Anwendung Schlüsselanmeldeinformationen hinzu. Diese Methode kann zusammen mit removeKey von einer Anwendung verwendet werden, um das Rollrollen der ablaufenden Schlüssel zu automatisieren.

Hinweis

Anwendungserstellungs - und Anwendungsaktualisierungsvorgänge können weiterhin verwendet werden, um Schlüsselanmeldeinformationen für jede Anwendung mit oder ohne Benutzerkontext hinzuzufügen und zu aktualisieren.

Sie sollten den Wert für den öffentlichen Schlüssel nur angeben, wenn Sie Ihrer Anwendung Zertifikatanmeldeinformationen hinzufügen. Wenn Sie Ihrer Anwendung ein Zertifikat für einen privaten Schlüssel hinzufügen, besteht die Gefahr, dass die Anwendung gefährdet wird.

Im Rahmen der Anforderungsüberprüfung für diese Methode wird ein Nachweis des Besitzes eines vorhandenen Schlüssels überprüft, bevor die Aktion ausgeführt werden kann.

Anwendungen, die über keine gültigen Zertifikate verfügen (es wurden noch keine Zertifikate hinzugefügt oder alle Zertifikate sind abgelaufen), können diese Dienstaktion nicht verwenden. Sie können den Vorgang Anwendung aktualisieren verwenden, um stattdessen ein Update durchzuführen.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Globaler Dienst US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. 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) Application.ReadWrite.All Directory.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung Application.ReadWrite.OwnedBy Application.ReadWrite.All, Directory.ReadWrite.All

Hinweis

Eine Anwendung benötigt keine bestimmte Berechtigung, um eigene Schlüssel zu verwenden.

HTTP-Anforderung

Sie können die Anwendung entweder mit ihrer ID oder appId adressieren. id und appId werden in App-Registrierungen im Microsoft Entra Admin Center als Objekt-ID bzw. Anwendungs-ID (Client-ID) bezeichnet.

POST /applications/{id}/addKey
POST /applications(appId='{appId}')/addKey

Anforderungsheader

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

Anforderungstext

Geben Sie im Anforderungstext die folgenden erforderlichen Eigenschaften an.

Eigenschaft Typ Beschreibung
keyCredential keyCredential Die neuen Anmeldeinformationen für den Anwendungsschlüssel, die hinzugefügt werden sollen. Typ, Verwendung und Schlüssel sind erforderliche Eigenschaften für diese Verwendung. Unterstützte Schlüsseltypen sind:
  • AsymmetricX509Cert: Die Verwendung muss sein Verify.
  • X509CertAndPassword: Die Verwendung muss sein. Sign
passwordCredential passwordCredential Es muss nur secretText festgelegt werden, der das Kennwort für den Schlüssel enthalten soll. Diese Eigenschaft ist nur für Schlüssel vom Typ X509CertAndPassworderforderlich. Legen Sie andernfalls auf null fest.
Beweis String Ein selbstsigniertes JWT-Token, das als Nachweis des Besitzes der vorhandenen Schlüssel verwendet wird. Dieses JWT-Token muss mit einem privaten Schlüssel signiert werden, der einem der vorhandenen gültigen Zertifikate entspricht, die der Anwendung zugeordnet sind. Das Token sollte den folgenden Anforderungen enthalten:
  • aud: Zielgruppe muss sein 00000002-0000-0000-c000-000000000000.
  • iss: Aussteller muss die ID der Anwendung sein, die die Anforderung initiiert.
  • nbf: Nicht vor der Zeit.
  • exp: Ablaufzeit sollte der Wert nbf + 10 Minuten sein.

Schritte zum Generieren dieses Besitznachweistokens finden Sie unter Generieren von Besitznachweistoken für rollende Schlüssel. Weitere Informationen zu den Anspruchstypen finden Sie unter Anspruchsnutzlast.

Antwort

Bei erfolgreicher Ausführung gibt die Methode den 200 OK Antwortcode und ein neues keyCredential-Objekt im Antworttext zurück.

Beispiele

Beispiel 1: Hinzufügen neuer Schlüsselanmeldeinformationen zu einer Anwendung

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

POST https://graph.microsoft.com/v1.0/applications/{id}/addKey
Content-type: application/json

{
    "keyCredential": {
        "type": "AsymmetricX509Cert",
        "usage": "Verify",
        "key": "MIIDYDCCAki..."
    },
    "passwordCredential": null,
    "proof":"eyJ0eXAiOiJ..."
}

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 200 OK
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.keyCredential"
}

Beispiel 2: Hinzufügen von Schlüsselanmeldeinformationen und einem zugeordneten Kennwort für den Schlüssel

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

POST https://graph.microsoft.com/v1.0/applications/{id}/addKey
Content-type: application/json

{
    "keyCredential": {
        "type": "X509CertAndPassword",
        "usage": "Sign",
        "key": "MIIDYDCCAki..."
    },
    "passwordCredential": {
        "secretText": "MKTr0w1..."
    },
    "proof":"eyJ0eXAiOiJ..."
}

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 200 OK
Content-Type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.keyCredential"
}