Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Espacio de nombres: microsoft.graph
Importante
Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Cree un nuevo objeto federatedIdentityCredential para una aplicación o un agenteIdentityBlueprint si no existe, o actualice las propiedades de un objeto federatedIdentityCredential existente.
Al configurar una relación de confianza entre el registro de aplicaciones de Microsoft Entra o agentIdentityBlueprint y el proveedor de identidades de la plataforma de proceso, puede usar tokens emitidos por esa plataforma para autenticarse con Plataforma de identidad de Microsoft y llamar a las API en el ecosistema de Microsoft. Se pueden agregar un máximo de 20 objetos a una aplicación o agenteIdentityBlueprint.
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.
Permisos para una aplicación
| Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
|---|---|---|
| Delegado (cuenta profesional o educativa) | Application.ReadWrite.All | No disponible. |
| Delegado (cuenta personal de Microsoft) | Application.ReadWrite.All | No disponible. |
| Aplicación | Application.ReadWrite.OwnedBy | Application.ReadWrite.All |
Importante
En escenarios delegados con cuentas profesionales o educativas, al usuario que ha iniciado sesión 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.
- Un usuario miembro no administrador con permisos de usuario predeterminados: para las aplicaciones de su propiedad
- Desarrollador de aplicaciones: para las aplicaciones de su propiedad
- Administrador de aplicaciones en la nube
- Administrador de la aplicación
Permisos para un agenteIdentityBlueprint
| Tipo de permiso | Permiso con privilegios mínimos | Permisos con privilegios más altos |
|---|---|---|
| Delegado (cuenta profesional o educativa) | AgentIdentityBlueprint.ReadWrite.All | Directory.ReadWrite.All |
| Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
| Aplicación | AgentIdentityBlueprint.ReadWrite.All | Directory.ReadWrite.All |
Importante
Cuando se usan permisos delegados, al usuario autenticado 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 id. de agente.
- Desarrollador de id. de agente: cree planos técnicos de identidad de agente. A la entidad de seguridad con este rol se le asigna la propiedad del plano técnico que crean y pueden realizar operaciones de escritura en ese plano técnico.
Solicitud HTTP
Para una aplicación:
- Puede dirigirse a la aplicación mediante su id . o appId. id y appId se conocen como id. de objeto y id. de aplicación (cliente), respectivamente, en los registros de aplicaciones en el Centro de administración Microsoft Entra.
PATCH /applications/{id}/federatedIdentityCredentials(name='{name}')
PATCH /applications(appId='{appId}')/federatedIdentityCredentials(name='{name}')
Para un agenteIdentityBlueprint:
PATCH /applications/{id}/microsoft.graph.agentIdentityBlueprint/federatedIdentityCredentials(name='{name}')
Encabezados de solicitud
| Nombre | Descripción |
|---|---|
| Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
| Content-Type | application/json. Necesario. |
| Prefer |
create-if-missing. Necesario para el comportamiento de upsert; de lo contrario, la solicitud se trata como una operación de actualización. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione una representación JSON del objeto federatedIdentityCredential .
En la tabla siguiente se enumeran las propiedades necesarias al crear federatedIdentityCredential. Tenga en cuenta que la propiedad name es necesaria como parte de la dirección URL de la solicitud.
| Propiedad | Tipo | Description |
|---|---|---|
| Audiencias | Colección string | Audiencia que puede aparecer en el token externo. Este campo es obligatorio y debe establecerse en api://AzureADTokenExchange para Microsoft Entra ID. Indica qué Plataforma de identidad de Microsoft debe aceptar en la aud notificación del token entrante. Este valor representa Microsoft Entra ID en el proveedor de identidades externo y no tiene ningún valor fijo entre los proveedores de identidades; es posible que tenga que crear un nuevo registro de aplicación en el proveedor de identidades para que sirva como audiencia de este token. Este campo solo puede aceptar un valor único y tiene un límite de 600 caracteres. Obligatorio. |
| claimsMatchingExpression | federatedIdentityExpression | Admite un valor NULL. El valor predeterminado es null si no se establece. Permite el uso de expresiones de coincidencia de notificaciones en las notificaciones especificadas. Si se define claimsMatchingExpression , subject debe ser null. Para obtener la lista de notificaciones y sintaxis de expresiones admitidas, visite la referencia fic flexible. |
| Emisor | Cadena | TLa dirección URL del proveedor de identidades externo y debe coincidir con la notificación del emisor del token externo que se está intercambiando. La combinación de los valores de emisor y asunto debe ser única en la aplicación. Tiene un límite de 600 caracteres. Obligatorio. |
| subject | Cadena | Admite un valor NULL. El valor predeterminado es null si no se establece. Identificador de la carga de trabajo de software externo dentro del proveedor de identidades externo. Al igual que el valor de audiencia, no tiene ningún formato fijo, ya que cada proveedor de identidades usa su propio guid, a veces un identificador delimitado por dos puntos y, a veces, cadenas arbitrarias. El valor aquí debe coincidir con la notificación secundaria dentro del token presentado a Microsoft Entra ID. Tiene un límite de 600 caracteres. La combinación del emisor y el asunto debe ser única en la aplicación. Si se define subject , claimsMatchingExpression debe ser null. |
Respuesta
Si se ejecuta correctamente, si no existe un objeto de aplicación con nombre , este método devuelve un 201 Created código de respuesta y un nuevo objeto federatedIdentityCredential en el cuerpo de la respuesta.
Si ya existe un objeto de aplicación con nombre , este método actualiza el objeto federatedIdentityCredential y devuelve un código de 204 No Content respuesta.
Ejemplos
Ejemplo 1: Creación de una nueva instancia de federatedIdentityCredential para una aplicación si no existe
En el ejemplo siguiente se crea un federatedIdentityCredential porque un federatedIdentityCredential con el valor de nombre especificado no existe.
Solicitud
En el ejemplo siguiente se muestra la solicitud.
PATCH https://graph.microsoft.com/beta/applications(uniqueName='app-65278')/federatedIdentityCredentials(name='fic01-app-65278')
Content-Type: application/json
{
"issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
"subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
"audiences": [
"api://AzureADTokenExchange"
]
}
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 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#applications('bcd7c908-1c4d-4d48-93ee-ff38349a75c8')/federatedIdentityCredentials/$entity",
"id": "d9b7bf1e-429e-4678-8132-9b00c9846cc4",
"name": "testing02fic01-app-65278",
"issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
"subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
"description": null,
"audiences": [
"api://AzureADTokenExchange"
]
}
Ejemplo 2: Actualización de una instancia de federatedIdentityCredential existente para una aplicación
En el ejemplo siguiente se actualiza federatedIdentityCredential porque existe un federatedIdentityCredential con el valor de nombre especificado.
Solicitud
En el ejemplo siguiente se muestra la solicitud.
PATCH https://graph.microsoft.com/beta/applications(uniqueName='app-65278')/federatedIdentityCredentials(name='fic01-app-65278')
Content-Type: application/json
Prefer: create-if-missing
{
"issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
"subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
"audiences": [
"api://AzureADTokenExchange"
]
}
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 204 No Content
Ejemplo 3: Creación de una nueva instancia de federatedIdentityCredential para un agenteIdentityBlueprint si no existe
En el ejemplo siguiente se crea federatedIdentityCredential para un agentIdentityBlueprint porque no existe una federatedIdentityCredential con el valor de nombre especificado.
Solicitud
En el ejemplo siguiente se muestra la solicitud.
PATCH https://graph.microsoft.com/beta/applications(uniqueName='app-65278')/microsoft.graph.agentIdentityBlueprint/federatedIdentityCredentials(name='fic01-app-65278')
Content-Type: application/json
{
"issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
"subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
"audiences": [
"api://AzureADTokenExchange"
]
}
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 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#applications('bcd7c908-1c4d-4d48-93ee-ff38349a75c8')/federatedIdentityCredentials/$entity",
"id": "d9b7bf1e-429e-4678-8132-9b00c9846cc4",
"name": "testing02fic01-app-65278",
"issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
"subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
"description": null,
"audiences": [
"api://AzureADTokenExchange"
]
}