Criar federatedIdentityCredential

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.

Crie um novo objeto federatedIdentityCredential para um aplicativo. Ao configurar uma relação de confiança entre seu Microsoft Entra registro de aplicativo e o provedor de identidade para sua plataforma de computação, você pode usar tokens emitidos por essa plataforma para autenticar com plataforma de identidade da Microsoft e chamar APIs no ecossistema da Microsoft. No máximo 20 objetos podem ser adicionados a um aplicativo.

Essa API está disponível nas seguintes implantações nacionais de nuvem.

Serviço global Governo dos EUA L4 GOVERNO DOS EUA L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões privilegiadas mais altas
Delegado (conta corporativa ou de estudante) Application.ReadWrite.All Indisponível.
Delegado (conta pessoal da Microsoft) Application.ReadWrite.All Indisponível.
Aplicativo Application.ReadWrite.OwnedBy Application.ReadWrite.All

Solicitação HTTP

Você pode abordar o aplicativo usando sua id ou appId. Id e appId são chamados de ID de Objeto e ID do Aplicativo (Cliente), respectivamente, em registros de aplicativo no centro de administração do Microsoft Entra.

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

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json. Obrigatório.

Corpo da solicitação

No corpo da solicitação, forneça uma representação JSON do objeto federatedIdentityCredential .

A tabela a seguir lista as propriedades necessárias ao criar a federatedIdentityCredential.

Propriedade Tipo Descrição
Público Coleção de cadeias de caracteres O público-alvo que pode aparecer no token externo. Esse campo é obrigatório e deve ser definido como api://AzureADTokenExchange para Microsoft Entra ID. Ele diz qual plataforma de identidade da Microsoft deve aceitar na declaração aud no token de entrada. Esse valor representa Microsoft Entra ID em seu provedor de identidade externo e não tem nenhum valor fixo entre provedores de identidade - talvez seja necessário criar um novo registro de aplicativo em seu provedor de identidade para servir como o público-alvo desse token. Esse campo só pode aceitar um único valor e tem um limite de 600 caracteres. Obrigatório.
Emissor Cadeia de caracteres TThe URL do provedor de identidade externa e deve corresponder à declaração do emissor do token externo que está sendo trocado. A combinação dos valores do emissor e do assunto deve ser exclusiva no aplicativo. Ele tem um limite de 600 caracteres. Obrigatório.
nome Cadeia de caracteres O identificador exclusivo da credencial de identidade federada, que tem um limite de 120 caracteres e deve ser amigável à URL. Ele é imutável uma vez criado
assunto Cadeia de caracteres Obrigatório. O identificador da carga de trabalho de software externo no provedor de identidade externo. Como o valor de audiência, ele não tem formato fixo, pois cada provedor de identidade usa o seu próprio - às vezes um GUID, às vezes um identificador delimitado por cólon, às vezes cadeias de caracteres arbitrárias. O valor aqui deve corresponder à sub-declaração dentro do token apresentado a Microsoft Entra ID. Ele tem um limite de 600 caracteres. A combinação de emissor e assunto deve ser exclusiva no aplicativo.

Resposta

Se for bem-sucedido, esse método retornará um 201 Created código de resposta e um objeto federatedIdentityCredential no corpo da resposta.

Exemplos

Solicitação

POST https://graph.microsoft.com/beta/applications/bcd7c908-1c4d-4d48-93ee-ff38349a75c8/federatedIdentityCredentials/
Content-Type: application/json

{
    "name": "testing02",
    "issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
    "subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
    "audiences": [
        "api://AzureADTokenExchange"
    ]
}

Resposta

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

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",
    "@odata.id": "https://graph.microsoft.com/v2/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/directoryObjects/$/Microsoft.DirectoryServices.Application('bcd7c908-1c4d-4d48-93ee-ff38349a75c8')/federatedIdentityCredentials/d9b7bf1e-429e-4678-8132-9b00c9846cc4",
    "id": "d9b7bf1e-429e-4678-8132-9b00c9846cc4",
    "name": "testing02",
    "issuer": "https://login.microsoftonline.com/3d1e2be9-a10a-4a0c-8380-7ce190f98ed9/v2.0",
    "subject": "a7d388c3-5e3f-4959-ac7d-786b3383006a",
    "description": null,
    "audiences": [
        "api://AzureADTokenExchange"
    ]
}