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 criptografa as asserções SAML que emite para esse aplicativo. Ele criptografa as asserções SAML 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 mais garantia 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. Você também pode obtê-lo do fornecedor do aplicativo nos casos em que o fornecedor do aplicativo fornece chaves de criptografia. Se o aplicativo espera que você forneça uma chave privada, você pode criá-la 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 na 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 de aplicativos na nuvem, Administrador de aplicativos ou proprietário da entidade 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 de um aplicativo empresarial. Esses aplicativos são configurados a partir do painel Aplicativos corporativos no centro de administração do Microsoft Entra, seja da galeria de aplicativos ou de um aplicativo que não seja de 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ê criou para sua instância, siga as instruções fornecidas pelo seu aplicativo para instalar a chave privada que o aplicativo deve 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.

    Nota

    A opção de criptografia de token só está disponível para aplicativos SAML que foram configurados a partir do painel de aplicativos Enterprise no centro de administração do Microsoft Entra, seja na galeria de aplicativos ou em um aplicativo que não seja de galeria. Para outras aplicações, esta opção 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.

    A captura de tela mostra como importar um arquivo de certificado usando o centro de administração do Microsoft Entra.

  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, navegue até Aplicativos de identidade>>Aplicativos empresariais>Todos os aplicativos 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 de um aplicativo registrado. Estas aplicações são configuradas a partir do painel 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ê precisa 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": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
      "accessTokenAcceptedVersion": null,
      "allowPublicClient": false,
      "appId": "00001111-aaaa-2222-bbbb-3333cccc4444",
      "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": "aaaaaaaa-0b0b-1c1c-2d2d-333333333333", 
          "startDate": "2018-10-25T21:42:18Z", 
          "type": "AsymmetricX509Cert", 
          "usage": "Encrypt", 
          "value": <Base64EncodedKeyFile> 
          "displayName": "CN=SAMLEncryptTest" 
        }, 
        {
          "customKeyIdentifier": "A1bC2dE3fH4iJ5kL6mN7oP8qR9sT0u=",
          "endDate": "2039-12-31T23:59:59Z", 
          "keyId": "bbbbbbbb-1c1c-2d2d-3e3e-444444444444",
          "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": "bbbbbbbb-1c1c-2d2d-3e3e-444444444444" 
    }  
    

Próximos passos