customAuthenticationExtension: validateAuthenticationConfiguration
Namespace: microsoft.graph
Wichtig
Die APIs unter der /beta
Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.
Eine API zum Überprüfen der Gültigkeit des Endpunkts und der Authentifizierungskonfiguration für ein customAuthenticationExtension-Objekt , das einen der folgenden abgeleiteten Typen darstellen kann:
- onTokenIssuanceStartCustomExtension-Ressourcentyp .
- onAttributeCollectionStartCustomExtension-Ressourcentyp .
- onAttributeCollectionSubmitCustomExtension-Ressourcentyp .
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
Weltweiter Service | US Government L4 | US Government L5 (DOD) | China, betrieben von 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
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) | CustomAuthenticationExtension.Read.All | CustomAuthenticationExtension.ReadWrite.All |
Delegiert (persönliches Microsoft-Konto) | Nicht unterstützt | Nicht unterstützt |
Anwendung | CustomAuthenticationExtension.Read.All | CustomAuthenticationExtension.ReadWrite.All |
Wichtig
In delegierten Szenarien mit Geschäfts-, Schul- oder Unikonten muss dem Administrator eine unterstützte Microsoft Entra Rolle oder eine benutzerdefinierte Rolle mit einer unterstützten Rollenberechtigung zugewiesen werden. Für diesen Vorgang werden die folgenden Rollen mit den geringsten Berechtigungen unterstützt:
- Authentifizierungserweiterungsadministrator
- Anwendungsadministrator
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 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/beta/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/beta/$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/beta/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/beta/$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"
},
]
}