Compartilhar via


Configurar a criptografia de token SAML do Microsoft Entra

Observação

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

A criptografia de token SAML permite o uso de declarações SAML criptografadas com um aplicativo compatível. Quando configurado para um aplicativo, o Microsoft Entra ID criptografa as declarações SAML que ele emite para esse aplicativo. Ele criptografa as declaraçõ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 evidência de autenticação para o usuário conectado.

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

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

Para configurar a criptografia de tokens, você precisará carregar um arquivo de certificado X.509 que contém a chave pública do objeto de aplicativo do 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ê poderá criá-la usando ferramentas de criptografia. A parte da chave privada é carregada no repositório de chaves do aplicativo e o certificado de chave pública correspondente é carregado no Microsoft Entra ID.

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

Pré-requisitos

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

  • Uma conta de usuário do Microsoft Entra. Se você ainda não tem uma conta, é possível criar uma conta gratuita.
  • Uma das seguintes funções: Administrador de Aplicativo de Nuvem, Administrador de Aplicativos ou proprietário da entidade de serviço.

Dica

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

Configurar a criptografia de token SAML do aplicativo empresarial

Esta seção descreve como configurar a criptografia de token SAML de um aplicativo empresarial. Esses aplicativos são configurados no painel Aplicativos empresariais no centro de administração do Microsoft Entra, na galeria de aplicativos ou em um aplicativo que não seja da galeria. Para aplicativos registrados por meio da experiência Registros de aplicativo, siga as diretrizes de Configurar criptografia de token SAML do aplicativo registrado.

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

  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 na criptografia. Ou, se o aplicativo fornece uma chave pública a ser usada para criptografia, siga as instruções do aplicativo para baixar do certificado X.509.

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

    Se o aplicativo usar uma chave que você criou para a sua instância, siga as instruções fornecidas pelo aplicativo para instalar a chave privada que o aplicativo deve usar para descriptografar tokens do 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 aplicativo no centro de administração do Microsoft Entra.

  1. Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.

  2. Navegue até Identidade>Aplicativos>Aplicativos Empresariais>Todos os aplicativos.

  3. Insira o nome do aplicativo existente na caixa de pesquisa e, em seguida, selecione o aplicativo nos resultados da pesquisa.

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

    Observação

    A opção de criptografia de token só está disponível para aplicativos SAML que foram configurados no painel Aplicativos empresariais no centro de administração do Microsoft Entra, na galeria de aplicativos ou em um aplicativo que não seja da galeria. Para outros aplicativos, esta opção está desabilitada.

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

    Captura de tela mostrando como importar um arquivo de certificado usando o centro de administração do Microsoft Entra.

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

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

  8. Confirme se as declaraçõ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é Identidade>Aplicativos>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, encontre o certificado e, em seguida, selecione a opção ... para exibir o menu suspenso.

  3. Selecione Desativar criptografia de tokens.

Configurar a criptografia de token SAML de aplicativo registrado

Esta seção descreve como configurar a criptografia de token SAML de um aplicativo registrado. Esses aplicativos são configurados no painel Registros de aplicativo no centro de administração do Microsoft Entra. Para o aplicativo empresarial, siga as diretrizes de Configurar criptografia de token SAML do aplicativo empresarial.

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

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 indo até a página Propriedades do aplicativo no centro de administração do Microsoft Entra e observando o valor ID do objeto.

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

Para configurar a criptografia de token para um registro de aplicativo, siga essas etapas:

  1. Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.

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

  3. Insira o nome do aplicativo existente na caixa de pesquisa e, em seguida, selecione o aplicativo 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 de aplicativo configurado com dois certificados de criptografia, com o segundo selecionado como ativo usando o tokenEnryptionKeyId.

    { 
      "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óximas etapas