Configuración del cifrado de tokens SAML de Microsoft Entra

Nota:

El cifrado de tokens es una característica de Microsoft Entra ID P1 o P2. Para obtener más información sobre las ediciones, características y precios de Microsoft Entra, consulte precios de Microsoft Entra.

El cifrado de tokens SAML habilita el uso de aserciones SAML cifradas con una aplicación que lo admite. Cuando se configure para una aplicación, Microsoft Entra ID cifrará las aserciones SAML que emite para esa aplicación mediante la clave pública obtenida desde un certificado almacenado en Microsoft Entra ID. La aplicación debe usar la clave privada coincidente para cifrar el token antes de que se pueda usar como prueba de la autenticación del usuario conectado.

Cifrar las aserciones SAML entre Microsoft Entra ID y la aplicación proporciona una garantía adicional de que el contenido del token no se puede interceptar y que los datos personales o corporativos no quedan expuestos.

Incluso sin el cifrado de tokens, los tokens SAML de Microsoft Entra nunca se transmiten por la red sin cifrar. Microsoft Entra ID requiere que los intercambios de solicitud/respuesta de token se realicen a través de canales HTTPS/TLS cifrados para que las comunicaciones entre el IDP, el explorador y la aplicación se realicen en vínculos cifrados. Considere el valor del cifrado de tokens para su situación en comparación con la sobrecarga de administrar más certificados.

Para configurar el cifrado de tokens, debe cargar un archivo de certificado X.509 que contenga la clave pública en el objeto de aplicación de Microsoft Entra que representa la aplicación. Para obtener el certificado X.509, puede descargarlo desde la misma aplicación u obtenerlo del proveedor de la aplicación en los casos donde este proporciona las claves de cifrado, o bien, en casos donde la aplicación espera que el usuario proporcione una clave cifrada, se puede crear usando herramientas de criptografía, la parte de la clave privada que se cargó en el almacén de claves de la aplicación y el certificado de clave pública coincidente que se cargó en Microsoft Entra ID.

Microsoft Entra ID usa AES-256 para cifrar los datos de aserción SAML.

Requisitos previos

Para configurar el cifrado de tokens SAML, necesita:

  • Una cuenta de usuario de Microsoft Entra. Si no la tiene, puede crear una cuenta gratis.
  • Uno de los siguientes roles: Administrador global, Administrador de aplicaciones en la nube, Administrador de aplicaciones o Propietario de la entidad de servicio.

Sugerencia

Los pasos de este artículo pueden variar ligeramente en función del portal desde donde comienza.

Configuración del cifrado de tokens SAML para aplicaciones empresariales

En esta sección se describe cómo configurar cifrado de tokens SAML para aplicaciones empresariales. Las aplicaciones que se hayan configurado desde la hoja Aplicaciones empresariales del Centro de administración de Microsoft Entra, ya sea desde la Galería de aplicaciones o desde una aplicación que no pertenece a la galería. En el caso de las aplicaciones registradas a través de la experiencia de Registros de aplicaciones, siga las instrucciones de Configuración de cifrado de tokens SAML para aplicaciones registradas.

Para configurar el cifrado de tokens SAML para aplicaciones empresariales, siga estos pasos:

  1. Obtenga un certificado de clave pública que coincida con una clave privada configurada en la aplicación.

    Cree un par de claves asimétrico para usarlo en el cifrado. O bien, si la aplicación suministra una clave pública para usarlo en el cifrado, siga las instrucciones de la aplicación para descargar el certificado X.509.

    La clave pública se debe almacenar en un archivo de certificado X.509 en formato .cer. Puede copiar los contenidos del archivo de certificado a un editor de texto y guardarlo como archivo .cer. El archivo de certificado debe contener únicamente la clave pública y no la clave privada.

    Si la aplicación usa una clave creada para la instancia, siga las instrucciones que proporciona la aplicación para instalar la clave privada que la aplicación usará para descifrar los tokens del inquilino de Microsoft Entra.

  2. Agregue el certificado a la configuración de la aplicación en Microsoft Entra ID.

Configurar el cifrado de tokens en el Centro de administración de Microsoft Entra

Puede agregar el certificado público a la configuración de la aplicación dentro del Centro de administración de Microsoft Entra.

  1. Inicie sesión en el Centro de administración de Microsoft Entra como Administrador de aplicaciones en la nube.

  2. Vaya a Identidad> Aplicaciones>aplicaciones para empresas> Todas las aplicaciones.

  3. Escriba el nombre de la aplicación existente en el cuadro de búsqueda y seleccione la aplicación existente en los resultados de la búsqueda.

  4. En la página de la aplicación, seleccione Cifrado de tokens.

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

    Nota:

    La opción Cifrado de tokens solo está disponible para aplicaciones SAML que se hayan configurado desde la hoja Aplicaciones empresariales de Centro de administración de Microsoft Entra, ya sea desde la Galería de aplicaciones o desde una aplicación que no pertenece a la galería. En el caso de otras aplicaciones, esta opción de menú está deshabilitada.

  5. En la página Token encryption (Cifrado de tokens), seleccione Import Certificate (Importar certificado) para importar el archivo .cer que contiene el certificado X.509 público.

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

  6. Una vez que se importa el certificado y la clave privada se configura para usarla en el lado de la aplicación, para activar el cifrado debe seleccionar ... junto al estado de la huella digital y, luego, seleccionar Activate token encryption (Activar el certificado de tokens) desde las opciones del menú desplegable.

  7. Seleccione para confirmar la activación del certificado de cifrado de tokens.

  8. Confirme que se cifran las aserciones SAML emitidas para la aplicación.

Para desactivar el cifrado de tokens en el Centro de administración de Microsoft Entra

  1. En el Centro de administración de Microsoft Entra, vaya a Identidad>Aplicaciones> Aplicaciones empresariales>Todas las aplicaciones y, a continuación, seleccione la aplicación que tiene habilitado el cifrado de tokens SAML.

  2. En la página de la aplicación, seleccione Cifrado de tokens, busque el certificado y seleccione la opción ... para mostrar el menú desplegable.

  3. Seleccione Deactivate token encryption (Desactivar el cifrado de tokens).

Configuración del cifrado de tokens SAML de aplicaciones registradas

En esta sección se describe cómo configurar cifrado de tokens SAML para aplicaciones registradas. Aplicaciones que se han configurado desde la hoja Registros de aplicaciones de Centro de administración de Microsoft Entra. Para la aplicación empresarial, siga las instrucciones de Configuración del cifrado de tokens SAML para aplicaciones empresariales.

Los certificados de cifrado se almacenan en el objeto de la aplicación de Microsoft Entra ID con una etiqueta de uso encrypt. Puede configurar varios certificados de cifrado y el que está activo para el cifrado de tokens se identifica con el atributo tokenEncryptionKeyID.

Necesitará el identificador de objeto de la aplicación para configurar el cifrado de tokens mediante Microsoft Graph API o PowerShell. Puede encontrar este valor mediante programación, o bien en la página Propiedades de la aplicación en Centro de administración de Microsoft Entra, anotando el valor de Object ID.

Cuando configure un valor keyCredential mediante Graph, PowerShell o en el manifiesto de aplicación, debe generar un GUID para usarlo para keyId.

Para configurar el cifrado de tokens para un registro de aplicación, siga estos pasos:

  1. Inicie sesión en el Centro de administración de Microsoft Entra como Administrador de aplicaciones en la nube.

  2. Vaya aIdentidad>Aplicaciones>Registros de aplicaciones>Todas las aplicaciones.

  3. Escriba el nombre de la aplicación existente en el cuadro de búsqueda y seleccione la aplicación existente en los resultados de la búsqueda.

  4. En la página de la aplicación, seleccione Manifiesto para editar el manifiesto de aplicación.

    En el ejemplo siguiente se muestra un manifiesto de aplicación configurado con dos certificados de cifrado, donde el segundo seleccionado es el activo que usa 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" 
    }  
    

Pasos siguientes