Introducción a las claves de directiva en Azure Active Directory B2C

Antes de comenzar, use el selector Elección de un tipo de directiva* para elegir el tipo de directiva que va a configurar. Azure Active Directory B2C ofrece dos métodos para definir el modo en que los usuarios interactúan con las aplicaciones: por medio de flujos de usuario predefinidos o de directivas personalizadas totalmente configurables. Los pasos necesarios en este artículo son diferentes para cada método.

Esta característica está disponible solo para directivas personalizadas. En los pasos de configuración, elija Directiva personalizada en el selector anterior.

Azure Active Directory B2C (Azure AD B2C) almacena secretos y certificados en forma de claves de directiva para establecer la confianza con los servicios con los que se integra. Estas confianzas constan de los siguientes componentes:

En este artículo se explica lo que necesita saber sobre las claves de directiva que usa Azure AD B2C.

Nota:

Actualmente, la configuración de las claves de directiva solo se limita a las directivas personalizadas.

Puede configurar secretos y certificados para establecer la confianza entre servicios en Azure Portal, en el menú Claves de directiva. Las claves pueden ser simétricas o asimétricas. La criptografía simétrica, o criptografía de clave privada, es donde se usa un secreto compartido para cifrar y descifrar los datos. La criptografía asimétrica, o la criptografía de clave pública, es un sistema de cifrado que usa pares de claves, que se componen de claves públicas que se comparten con la aplicación de usuario de confianza y las claves privadas que solo conoce Azure AD B2C.

Claves y conjunto de claves de directiva

El recurso de nivel superior de las claves de directiva en Azure AD B2C es el contenedor Keyset. Cada conjunto de claves contiene al menos una clave. Una clave tiene los siguientes atributos:

Atributo Obligatorio Comentarios
use Uso: Identificar el uso previsto de la clave pública Cifrar los datos enc o comprobar la firma en datos sig
nbf No Fecha y hora de activación.
exp No Fecha y hora de expiración.

Se recomienda establecer los valores de activación y expiración de claves de acuerdo con los estándares de PKI. Puede que necesite rotar esos certificados por motivos de seguridad o de directivas. Por ejemplo, puede establecer una directiva para rotar todos los certificados cada año.

Para crear una clave, puede elegir uno de los métodos siguientes:

  • Manual: cree un secreto con una cadena que defina. El secreto es una clave simétrica. Puede establecer las fechas de activación y expiración.
  • Generado: se genera automáticamente una clave. Puede establecer fechas de activación y de expiración. Hay dos opciones:
    • Secreto: genera una clave simétrica.
    • RSA: genera un par de claves (claves asimétricas).
  • Cargar: cargue un certificado o una clave PKCS12. El certificado debe contener las claves públicas y privadas (claves asimétricas).

Sustitución de claves

Por motivos de seguridad, Azure AD B2C puede sustituir las claves periódicamente, o inmediatamente en caso de emergencia. Cualquier aplicación, proveedor de identidades o API REST que se integra con Azure AD B2C debe estar preparada para controlar un evento de sustitución de claves, con independencia de la frecuencia con que se produzca. De lo contrario, si la aplicación o Azure AD B2C intenta usar una clave expirada para realizar una operación criptográfica, se producirá un error en la solicitud de inicio de sesión.

Si un conjunto de claves de Azure AD B2C tiene varias claves, solo una de ellas está activa al mismo tiempo, en función de los criterios siguientes:

  • La activación de claves se basa en la fecha de activación.
    • Las claves se ordenan por fecha de activación en orden ascendente. Las claves con fechas de activación en el futuro aparecen en la parte inferior de la lista. Las claves sin una fecha de activación se encuentran en la parte inferior de la lista.
    • Cuando la fecha y hora actuales es mayor que la fecha de activación de una clave, Azure AD B2C activará la clave y dejará de usar la clave activa anterior.
  • Cuando ha transcurrido el tiempo de expiración de la clave actual y el contenedor de claves contiene una nueva clave con tiempos no anteriores a una fecha y de expiración válidos, la nueva clave se activará automáticamente.
  • Cuando ha transcurrido el tiempo de expiración de la clave actual y el contenedor de claves no contiene una nueva clave con tiempos no anteriores a una fecha y de expiración válidos, Azure AD B2C no podrá usar la clave expirada. Azure AD B2C generará un mensaje de error en un componente dependiente de la directiva personalizada. Para evitar este problema, puede crear una clave predeterminada sin fechas de activación ni expiración a modo de red de seguridad.
  • El punto de conexión de la clave (URI de JWKS) del punto de conexión de configuración conocido de OpenId Connect refleja las claves configuradas en el contenedor de claves, cuando se hace referencia a la clave en el perfil técnico de JwtIssuer. Una aplicación que use una biblioteca OIDC capturará automáticamente estos metadatos para asegurarse de que use las claves correctas para validar los tokens. Para obtener más información, aprenda a usar la Biblioteca de autenticación de Microsoft, que siempre captura las claves de firma de tokens más recientes automáticamente.

Administración de claves de directiva

Para obtener la clave activa actual dentro de un contenedor de claves, use el punto de conexión getActiveKey de Microsoft Graph API.

Para agregar o eliminar claves de cifrado y firma, siga estos pasos:

  1. Inicie sesión en Azure Portal.
  2. Si tiene acceso a varios inquilinos, seleccione el icono Configuración en el menú superior para cambiar a su inquilino de Azure AD B2C desde el menú Directorios y suscripciones.
  3. En Azure Portal, busque y seleccione Azure AD B2C.
  4. En la página de información general, en Directivas, seleccione Identity Experience Framework.
  5. Seleccione Claves de directiva.
    1. Para agregar una nueva clave, seleccione Agregar.
    2. Para quitar una nueva clave, seleccione la clave y, a continuación, seleccione Eliminar. Para eliminar la clave, escriba el nombre del contenedor de claves que se va a eliminar. Azure AD B2C eliminará la clave y creará una copia de la clave con el sufijo .bak.

Reemplazo de una clave

Las claves de un conjunto de claves no se pueden reemplazar ni quitar. Si tiene que cambiar una clave existente:

  • Se recomienda agregar una nueva clave con la fecha de activación establecida en la fecha y hora actuales. Azure AD B2C activará la nueva clave y dejará de usar la clave activa anterior.
  • También puede crear un conjunto de claves con las claves correctas. Actualice la directiva para usar el nuevo conjunto de claves y, después, quite el conjunto de claves anterior.

Pasos siguientes