Configurar a encriptação de token SAML do Microsoft Entra

Nota

A criptografia de token é um recurso do Microsoft Entra ID P1 ou P2. Para saber mais sobre as edições, recursos e preços do Microsoft Entra, consulte Preços do Microsoft Entra.

A criptografia de token SAML permite o uso de asserções SAML criptografadas com um aplicativo que a suporta. Quando configurado para um aplicativo, o Microsoft Entra ID criptografará as asserções SAML emitidas para esse aplicativo usando a chave pública obtida de um certificado armazenado no Microsoft Entra ID. O aplicativo deve usar a chave privada correspondente para descriptografar o token antes que ele possa ser usado como prova de autenticação para o usuário conectado.

Criptografar as asserções SAML entre o Microsoft Entra ID e o aplicativo fornece garantia adicional de que o conteúdo do token não pode ser intercetado e os dados pessoais ou corporativos comprometidos.

Mesmo sem criptografia de token, os tokens SAML do Microsoft Entra nunca são passados na rede de forma clara. O Microsoft Entra ID exige que as trocas de solicitação/resposta de token ocorram por canais HTTPS/TLS criptografados para que as comunicações entre o IDP, o navegador e o aplicativo ocorram por meio de links criptografados. Considere o valor da criptografia de token para sua situação em comparação com a sobrecarga de gerenciar mais certificados.

Para configurar a criptografia de token, você precisa carregar um arquivo de certificado X.509 que contém a chave pública para o objeto de aplicativo Microsoft Entra que representa o aplicativo. Para obter o certificado X.509, você pode baixá-lo do próprio aplicativo ou obtê-lo do fornecedor do aplicativo nos casos em que o fornecedor do aplicativo fornece chaves de criptografia ou nos casos em que o aplicativo espera que você forneça uma chave privada, ele pode ser criado usando ferramentas de criptografia, a parte da chave privada carregada no armazenamento de chaves do aplicativo e o certificado de chave pública correspondente carregado no ID do Microsoft Entra.

O Microsoft Entra ID usa AES-256 para criptografar os dados de asserção SAML.

Pré-requisitos

Para configurar a criptografia de token SAML, você precisa:

  • Uma conta de usuário do Microsoft Entra. Se ainda não tiver uma, pode criar uma conta gratuitamente.
  • Uma das seguintes funções: Administrador Global, Administrador de Aplicações na Cloud, Administrador de Aplicações ou proprietário do principal de serviço.

Gorjeta

As etapas neste artigo podem variar ligeiramente com base no portal a partir do qual você começou.

Configurar a criptografia de token SAML do aplicativo corporativo

Esta seção descreve como configurar a criptografia de token SAML do aplicativo empresarial. Aplicações que foram configuradas a partir da folha Aplicações empresariais no centro de administração do Microsoft Entra, a partir da Galeria de Aplicações ou de uma aplicação que não seja da Galeria. Para aplicativos registrados por meio da experiência de registros de aplicativos, siga as diretrizes Configurar criptografia de token SAML de aplicativo registrado.

Para configurar a criptografia de token SAML do aplicativo empresarial, siga estas etapas:

  1. Obtenha um certificado de chave pública que corresponda a uma chave privada configurada no aplicativo.

    Crie um par de chaves assimétricas para usar para criptografia. Ou, se o aplicativo fornecer uma chave pública para usar para criptografia, siga as instruções do aplicativo para baixar o certificado X.509.

    A chave pública deve ser armazenada em um arquivo de certificado X.509 em formato .cer. Você pode copiar o conteúdo do arquivo de certificado para um editor de texto e salvá-lo como um arquivo de .cer. O arquivo de certificado deve conter apenas a chave pública e não a chave privada.

    Se o aplicativo usa uma chave que você cria para sua instância, siga as instruções fornecidas pelo seu aplicativo para instalar a chave privada que o aplicativo usará para descriptografar tokens do seu locatário do Microsoft Entra.

  2. Adicione o certificado à configuração do aplicativo no Microsoft Entra ID.

Configurar a criptografia de token no centro de administração do Microsoft Entra

Você pode adicionar o certificado público à configuração do seu aplicativo no centro de administração do Microsoft Entra.

  1. Entre no centro de administração do Microsoft Entra como pelo menos um administrador de aplicativos na nuvem.

  2. Navegue até Identity>Applications>Enterprise applications>Todos os aplicativos.

  3. Introduza o nome da aplicação existente na caixa de pesquisa e, em seguida, selecione a aplicação nos resultados da pesquisa.

  4. Na página do aplicativo, selecione Criptografia de token.

    Screenshot shows how to select the Token encryption option in the Microsoft Entra admin center.

    Nota

    A opção de criptografia de token só está disponível para aplicativos SAML que foram configurados a partir da folha Aplicativos corporativos no centro de administração do Microsoft Entra, seja na Galeria de Aplicativos ou em um aplicativo que não seja da Galeria. Para outras aplicações, esta opção de menu está desativada.

  5. Na página Criptografia de token, selecione Importar certificado para importar o arquivo de .cer que contém seu certificado X.509 público.

    Screenshot shows how to import a certificate file using Microsoft Entra admin center.

  6. Depois que o certificado for importado e a chave privada estiver configurada para uso no lado do aplicativo, ative a criptografia selecionando o botão ... ao lado do status da impressão digital e selecione Ativar criptografia de token nas opções no menu suspenso.

  7. Selecione Sim para confirmar a ativação do certificado de criptografia de token.

  8. Confirme se as asserções SAML emitidas para o aplicativo estão criptografadas.

Para desativar a criptografia de token no centro de administração do Microsoft Entra

  1. No centro de administração do Microsoft Entra, vá para Identity>Applications>Enterprise applications>All applications e selecione o aplicativo que tem a criptografia de token SAML habilitada.

  2. Na página do aplicativo, selecione Criptografia de token, localize o certificado e selecione a opção ... para mostrar o menu suspenso.

  3. Selecione Desativar criptografia de token.

Configurar a criptografia de token SAML do aplicativo registrado

Esta seção descreve como configurar a criptografia de token SAML do aplicativo registrado. Aplicações que foram configuradas a partir da folha Registos de aplicações no centro de administração do Microsoft Entra. Para aplicativos corporativos, siga as diretrizes Configurar criptografia de token SAML de aplicativo empresarial.

Os certificados de criptografia são armazenados no objeto do aplicativo no Microsoft Entra ID com uma encrypt marca de uso. Você pode configurar vários certificados de criptografia e o que está ativo para criptografar tokens é identificado pelo tokenEncryptionKeyID atributo.

Você precisará da ID de objeto do aplicativo para configurar a criptografia de token usando a API do Microsoft Graph ou o PowerShell. Você pode encontrar esse valor programaticamente ou acessando a página Propriedades do aplicativo no centro de administração do Microsoft Entra e anotando o valor da ID do objeto.

Ao configurar uma keyCredential usando Graph, PowerShell ou no manifesto do aplicativo, você deve gerar um GUID para usar para o keyId.

Para configurar a criptografia de token para um registro de aplicativo, execute estas etapas:

  1. Entre no centro de administração do Microsoft Entra como pelo menos um administrador de aplicativos na nuvem.

  2. Navegue até Aplicativos de identidade>>Registros de>aplicativos Todos os aplicativos.

  3. Introduza o nome da aplicação existente na caixa de pesquisa e, em seguida, selecione a aplicação nos resultados da pesquisa.

  4. Na página do aplicativo, selecione Manifesto para editar o manifesto do aplicativo.

    O exemplo a seguir mostra um manifesto do aplicativo configurado com dois certificados de criptografia e com o segundo selecionado como o ativo usando o tokenEncryptionKeyId.

    { 
      "id": "3cca40e2-367e-45a5-8440-ed94edd6cc35",
      "accessTokenAcceptedVersion": null,
      "allowPublicClient": false,
      "appId": "cb2df8fb-63c4-4c35-bba5-3d659dd81bf1",
      "appRoles": [],
      "oauth2AllowUrlPathMatching": false,
      "createdDateTime": "2017-12-15T02:10:56Z",
      "groupMembershipClaims": "SecurityGroup",
      "informationalUrls": { 
         "termsOfService": null, 
         "support": null, 
         "privacy": null, 
         "marketing": null 
      },
      "identifierUris": [ 
        "https://testapp"
      ],
      "keyCredentials": [ 
        { 
          "customKeyIdentifier": "Tog/O1Hv1LtdsbPU5nPphbMduD=", 
          "endDate": "2039-12-31T23:59:59Z", 
          "keyId": "8be4cb65-59d9-404a-a6f5-3d3fb4030351", 
          "startDate": "2018-10-25T21:42:18Z", 
          "type": "AsymmetricX509Cert", 
          "usage": "Encrypt", 
          "value": <Base64EncodedKeyFile> 
          "displayName": "CN=SAMLEncryptTest" 
        }, 
        {
          "customKeyIdentifier": "U5nPphbMduDmr3c9Q3p0msqp6eEI=",
          "endDate": "2039-12-31T23:59:59Z", 
          "keyId": "6b9c6e80-d251-43f3-9910-9f1f0be2e851",
          "startDate": "2018-10-25T21:42:18Z", 
          "type": "AsymmetricX509Cert", 
          "usage": "Encrypt", 
          "value": <Base64EncodedKeyFile> 
          "displayName": "CN=SAMLEncryptTest2" 
        } 
      ], 
      "knownClientApplications": [], 
      "logoUrl": null, 
      "logoutUrl": null, 
      "name": "Test SAML Application", 
      "oauth2AllowIdTokenImplicitFlow": true, 
      "oauth2AllowImplicitFlow": false, 
      "oauth2Permissions": [], 
      "oauth2RequirePostResponse": false, 
      "orgRestrictions": [], 
      "parentalControlSettings": { 
         "countriesBlockedForMinors": [], 
         "legalAgeGroupRule": "Allow" 
        }, 
      "passwordCredentials": [], 
      "preAuthorizedApplications": [], 
      "publisherDomain": null, 
      "replyUrlsWithType": [], 
      "requiredResourceAccess": [], 
      "samlMetadataUrl": null, 
      "signInUrl": "https://127.0.0.1:444/applications/default.aspx?metadata=customappsso|ISV9.1|primary|z" 
      "signInAudience": "AzureADMyOrg",
      "tags": [], 
      "tokenEncryptionKeyId": "6b9c6e80-d251-43f3-9910-9f1f0be2e851" 
    }  
    

Próximos passos