customAuthenticationExtension: validateAuthenticationConfiguration
Espacio de nombres: microsoft.graph
Una API para comprobar la validez del punto de conexión y la configuración de autenticación de un objeto customAuthenticationExtension , que puede representar uno de los siguientes tipos derivados:
Esta API está disponible en las siguientes implementaciones nacionales de nube.
Servicio global | Gobierno de EE. UU. L4 | Us Government L5 (DOD) | China operada por 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ❌ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | CustomAuthenticationExtension.Read.All | CustomAuthenticationExtension.ReadWrite.All |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | CustomAuthenticationExtension.Read.All | CustomAuthenticationExtension.ReadWrite.All |
Importante
En escenarios delegados con cuentas profesionales o educativas, al administrador se le debe asignar un rol de Microsoft Entra compatible o un rol personalizado con un permiso de rol admitido. Se admiten los siguientes roles con privilegios mínimos para esta operación:
- Administrador de extensibilidad de autenticación
- Administrador de la aplicación
Solicitud HTTP
Para validar el punto de conexión y la configuración de autenticación de customAuthenticationExtension por su identificador.
POST /identity/customAuthenticationExtensions/{customAuthenticationExtensionId}/validateAuthenticationConfiguration
Para validar el punto de conexión y la configuración de autenticación especificados en el cuerpo de la solicitud para una customAuthenticationExtension. Es posible que el objeto de extensión de autenticación personalizada aún no exista y puede usar este punto de conexión para validar la configuración antes de crear la extensión de autenticación personalizada.
POST /identity/customAuthenticationExtensions/validateAuthenticationConfiguration
Encabezados de solicitud
Nombre | Descripción |
---|---|
Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione una representación JSON de los parámetros.
La siguiente tabla muestra los parámetros que se pueden usar con esta acción. Proporcione un endpointConfiguration y authenticationConfiguration si realiza consultas en el nivel raíz. De lo contrario, para una extensión personalizada específica, no proporcione un cuerpo de solicitud para este método.
Parámetro | Tipo | Descripción |
---|---|---|
endpointConfiguration | customExtensionEndpointConfiguration | Punto de conexión HTTP para la extensión de autenticación personalizada que se va a validar. |
authenticationConfiguration | customExtensionEndpointConfiguration | Configuración de autenticación de la extensión de autenticación personalizada que se va a validar. |
Respuesta
Si se ejecuta correctamente, esta acción devuelve un 200 OK
código de respuesta y una authenticationConfigurationValidation en el cuerpo de la respuesta.
Ejemplos
Ejemplo 1: Proporcionar y validar una posible configuración de extensión de autenticación personalizada
Solicitud
En el ejemplo siguiente se muestra la solicitud.
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"
}
}
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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"
},
]
}
Ejemplo 2: Validar la configuración de una extensión de autenticación personalizada existente específica
Solicitud
En el ejemplo siguiente se muestra la solicitud.
POST https://graph.microsoft.com/v1.0/identity/customAuthenticationExtensions/9f39f3bb-457c-4a2a-8099-0e480e7ea142/validateAuthenticationConfiguration
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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"
},
]
}