Freigeben über


customAuthenticationExtension: validateAuthenticationConfiguration

Namespace: microsoft.graph

Eine API zum Überprüfen der Gültigkeit des Endpunkts und der Authentifizierungskonfiguration für eine customAuthenticationExtension.

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) CustomAuthenticationExtension.Read.All CustomAuthenticationExtension.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung CustomAuthenticationExtension.Read.All CustomAuthenticationExtension.ReadWrite.All

HTTP-Anforderung

So überprüfen Sie den Endpunkt und die Authentifizierungskonfiguration für eine customAuthenticationExtension anhand ihrer ID.

POST /identity/customAuthenticationExtensions/{customAuthenticationExtensionId}/validateAuthenticationConfiguration

Zum Überprüfen des Endpunkts und der Authentifizierungskonfiguration, die im Anforderungstext für eine customAuthenticationExtension angegeben ist. Das Objekt der benutzerdefinierten Authentifizierungserweiterung ist möglicherweise noch nicht vorhanden, und Sie können diesen Endpunkt verwenden, um die Konfiguration vor dem Erstellen der benutzerdefinierten Authentifizierungserweiterung zu überprüfen.

POST /identity/customAuthenticationExtensions/validateAuthenticationConfiguration

Anforderungsheader

Name Beschreibung
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.

Anforderungstext

Geben Sie als Anforderungstext eine JSON-Darstellung der Parameter an.

In der folgenden Tabelle sind die Parameter aufgeführt, die mit dieser Aktion verwendet werden können. Geben Sie endpointConfiguration und authenticationConfiguration an, wenn Abfragen auf Stammebene ausgeführt werden. Geben Sie andernfalls für eine bestimmte benutzerdefinierte Erweiterung keinen Anforderungstext für diese Methode an.

Parameter Typ Beschreibung
endpointConfiguration customExtensionEndpointConfiguration Der HTTP-Endpunkt für die zu überprüfende benutzerdefinierte Authentifizierungserweiterung.
authenticationConfiguration customExtensionEndpointConfiguration Die Authentifizierungskonfiguration für die zu überprüfende benutzerdefinierte Authentifizierungserweiterung.

Antwort

Wenn die Aktion erfolgreich verläuft, werden der 200 OK Antwortcode und eine authenticationConfigurationValidation im Antworttext zurückgegeben.

Beispiele

Beispiel 1: Bereitstellen und Überprüfen einer potenziellen Konfiguration einer benutzerdefinierten Authentifizierungserweiterung

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

POST https://graph.microsoft.com/v1.0/customAuthenticationExtensions/validateAuthenticationConfiguration
Content-Type: application/json

{
    "endpointConfiguration": {
        "@odata.type": "#microsoft.graph.httpRequestEndpoint",
        "targetUrl": "https://australia.contoso.com/users"
    },
    "authenticationConfiguration": {
        "@odata.type": "#microsoft.graph.azureAdTokenAuthentication",
        "resourceId": "api://extensibilityapi.azurwebsites.net/f9c5dc6b-d72b-4226-8ccd-801f7a290428"
    }
}

Antwort

Das folgende Beispiel zeigt die Antwort.

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

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.authenticationConfigurationValidation",
    "errors": [
        {
            "code": "IncorrectResourceIdFormat",
            "message": "ResourceId should be in the format of 'api://{fully qualified domain name}/{appid}'"
        },
        {
            "code": "DomainNameDoesNotMatch",
            "message": "The fully qualified domain name in resourceId should match that of the targetUrl"
        },
        {
            "code": "ServicePrincipalNotFound",
            "message": "The appId of the resourceId should correspond to a real service principal in the tenant"
        }
    ],
    "warnings": [
        {
            "code": "PermissionNotGrantedToServicePrincipal",
            "message": "The permission CustomAuthenticationExtensions.Receive.Payload is not granted to the service principal of the resource app"
        },
    ]
}

Beispiel 2: Überprüfen der Konfiguration einer bestimmten vorhandenen benutzerdefinierten Authentifizierungserweiterung

Anforderung

Das folgende Beispiel zeigt eine Anfrage.

POST https://graph.microsoft.com/v1.0/identity/customAuthenticationExtensions/9f39f3bb-457c-4a2a-8099-0e480e7ea142/validateAuthenticationConfiguration

Antwort

Das folgende Beispiel zeigt die Antwort.

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

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#microsoft.graph.authenticationConfigurationValidation",
    "errors": [
        {
            "code": "IncorrectResourceIdFormat",
            "message": "ResourceId should be in the format of 'api://{fully qualified domain name}/{appid}'"
        },
        {
            "code": "DomainNameDoesNotMatch",
            "message": "The fully qualified domain name in resourceId should match that of the targetUrl"
        },
        {
            "code": "ServicePrincipalNotFound",
            "message": "The appId of the resourceId should correspond to a real service principal in the tenant"
        }
    ],
    "warnings": [
        {
            "code": "PermissionNotGrantedToServicePrincipal",
            "message": "The permission CustomAuthenticationExtensions.Receive.Payload is not granted to the service principal of the resource app"
        },
    ]
}