Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se definen algunos conceptos básicos relacionados con Microsoft Azure Attestation.
JSON Web Token (JWTs)
JSON Web Token (JWT) es un método estándar abierto RFC7519 para transmitir información de forma segura entre partes como un objeto de notación de objetos JavaScript (JSON). Esta información se puede comprobar y confiar porque está firmada digitalmente. Los JWT se pueden firmar mediante un secreto o un par de claves pública o privada.
Clave JSON para la Web (JWK)
Json Web Key (JWK) es una estructura de datos JSON que representa una clave criptográfica. Esta especificación también define una estructura de datos Set JSON de JWK que representa un conjunto de JWK.
Proveedor de atestación
El proveedor de atestación pertenece al proveedor de recursos de Azure denominado Microsoft.Attestation. El proveedor de recursos es un punto de conexión de servicio que proporciona el contrato REST de Azure Attestation y se implementa mediante Azure Resource Manager. Cada proveedor de atestación respeta una directiva específica y detectable. Los proveedores de atestación se crean con una directiva predeterminada para cada tipo de atestación (tenga en cuenta que el enclave de VBS no tiene ninguna directiva predeterminada). Consulte ejemplos de una directiva de atestación para obtener más información sobre la directiva predeterminada para SGX.
Solicitud de atestación
La solicitud de atestación es un objeto JSON serializado enviado por la aplicación cliente al proveedor de atestación. El objeto de solicitud para el enclave SGX tiene dos propiedades:
- "Quote" – El valor de la propiedad "Quote" es una cadena que contiene una representación codificada en Base64URL de la cita de atestación.
- "EnclaveHeldData" : el valor de la propiedad "EnclaveHeldData" es una cadena que contiene una representación codificada en Base64URL de los datos mantenidos del enclave.
Azure Attestation valida el "Quote" proporcionado para asegurarse de que el hash SHA256 de los datos contenidos del enclave proporcionado se expresa en los primeros 32 bytes del campo reportData de la cita.
Directiva de atestación
La directiva de atestación se utiliza para procesar la evidencia de atestación y los clientes pueden configurarla. El núcleo de Azure Attestation es un motor de directivas, que procesa los reclamos que constituyen la evidencia. Las directivas se utilizan para determinar si Azure Attestation emitirá un token de atestación en función de la evidencia (o no) y, por tanto, para avalar (o no) al atestador. En consecuencia, si no se pasan todas las directivas, no se emite ningún token JWT.
Si la directiva predeterminada del proveedor de atestación no satisface las necesidades, los clientes pueden crear directivas personalizadas en cualquiera de las regiones admitidas por Azure Attestation. La administración de directivas es una característica clave proporcionada a los clientes por Azure Attestation. Las directivas son específicas del tipo de atestación y se pueden usar para identificar enclaves o agregar notificaciones al token de salida o modificar notificaciones en un token de salida.
Consulte ejemplos de una directiva de atestación.
Ventajas de la firma de políticas
Una directiva de atestación es lo que determina en última instancia si Azure Attestation emite un token de atestación. La directiva también determina las reclamaciones que se van a generar en el token de atestación. Es fundamental que la directiva evaluada por el servicio sea la directiva escrita por el administrador y que no haya sido manipulada ni modificada por entidades externas.
El modelo de confianza define el modelo de autorización del proveedor de atestación para definir y actualizar la directiva. Se admiten dos modelos: uno basado en la autorización de Microsoft Entra y otro basado en la posesión de claves criptográficas administradas por el cliente (denominada modelo aislado). El modelo aislado permite a Azure Attestation asegurarse de que la directiva enviada por el cliente no está manipulada.
En el modelo aislado, el administrador crea un proveedor de atestación que especifica un conjunto de certificados X.509 de firma de confianza en un archivo. Después, el administrador puede agregar una directiva firmada al proveedor de atestación. Azure Attestation, al procesar la solicitud de atestación, valida la firma de la directiva mediante la clave pública representada por el parámetro "jwk" o "x5c" en el encabezado. Azure Attestation comprueba si la clave pública del encabezado de solicitud está en la lista de certificados de firma de confianza asociados al proveedor de atestación. De este modo, el usuario de confianza (Azure Attestation) puede confiar en una directiva firmada mediante los certificados X.509 que conoce.
Consulte ejemplos de certificado de firmante de directivas para obtener ejemplos.
Token de atestación
La respuesta de Azure Attestation es una cadena JSON cuyo valor contiene JWT. Azure Attestation empaqueta las notificaciones y genera un JWT firmado. La operación de firma se realiza mediante un certificado autofirmado con el nombre del firmante que coincide con el elemento AttestUri del proveedor de atestación.
Get OpenID Metadata API devuelve una respuesta de configuración de OpenID según lo especificado por el protocolo de detección de OpenID Connect. La API recupera metadatos sobre los certificados de firma que usa Azure Attestation.
Consulte ejemplos de token de atestación.
Cifrado de datos en reposo
Para proteger los datos de los clientes, Azure Attestation conserva sus datos en Azure Storage. Azure Storage proporciona cifrado de datos en reposo a medida que los datos se escriben en centros de datos y los descifra para que los clientes puedan acceder a ellos. Este cifrado se produce mediante una clave de cifrado administrada por Microsoft.
Además de proteger los datos en Azure Storage, Azure Attestation también aprovecha Azure Disk Encryption (ADE) para cifrar las máquinas virtuales del servicio. Si Azure Attestation se ejecuta en un enclave en entornos informáticos confidenciales de Azure, la extensión ADE no se admite actualmente. En estos escenarios, para evitar que los datos se almacenen en memoria, el archivo de página está deshabilitado.
No se conserva ningún dato del cliente en las unidades de disco duro locales de la instancia de Azure Attestation.