Compartir a través de


Biblioteca cliente de Azure Confidential Ledger para Java: versión 1.0.14

Azure Confidential Ledger proporciona un servicio para el registro en un libro de contabilidad inmutable y a prueba de alteraciones. Como parte de la cartera de computación confidencial de Azure , Azure Confidential Ledger se ejecuta en enclaves sgx. Se basa en el marco del consorcio confidencial de Microsoft Research.

Código | fuentePaquete (Maven) | Documentación del | productoMuestras

Introducción

Requisitos previos

  • Un kit de desarrollo de Java (JDK), versión 8 o posterior.
  • Suscripción de Azure
  • Una instancia en ejecución de Azure Confidential Ledger.
  • Un usuario registrado en Confidential Ledger, normalmente asignado durante la creación de recursos de ARM , con Administrator privilegios.

Inclusión del paquete

<dependency>
  <groupId>com.azure</groupId>
  <artifactId>azure-security-confidentialledger</artifactId>
  <version>1.0.14</version>
</dependency>

Autenticar el cliente

Uso de Azure Active Directory

Para interactuar con el servicio Azure Confidential Ledger, el cliente debe presentar un token de portador de Azure Active Directory al servicio.

La manera más sencilla de proporcionar un token de portador es usar el DefaultAzureCredential método de autenticación proporcionando credenciales de secreto de cliente en esta sección de introducción, pero puede encontrar más formas de autenticarse con azure-identity.

Uso de un certificado de cliente

Como alternativa a Azure Active Directory, los clientes pueden optar por usar un certificado de cliente para autenticarse a través de TLS mutuo. CertificateCredential puede utilizarse para este fin. Este no es el enfoque recomendado para cualquier persona nueva en el servicio.

Creación de LedgerBaseClient con credenciales de Azure Active Directory

Puede autenticarse con Azure Active Directory mediante la biblioteca de identidades de Azure.

Para usar el proveedor DefaultAzureCredential que se muestra a continuación u otros proveedores de credenciales proporcionados con el SDK de Azure, incluya el azure-identity paquete:

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-identity</artifactId>
    <version>1.5.4</version>
</dependency>

Establezca los valores del identificador de cliente, el identificador de inquilino y el secreto de cliente de la aplicación de AAD como variables de entorno: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET.

Conceptos clave

Entradas y transacciones del libro de contabilidad

Cada escritura en Azure Confidential Ledger genera una entrada de libro de contabilidad inmutable en el servicio. Las escrituras, también conocidas como transacciones, se identifican de forma única mediante identificadores de transacción que se incrementan con cada escritura. Una vez escritas, las entradas del libro de contabilidad se pueden recuperar en cualquier momento.

Receipts

Los cambios de estado en Confidential Ledger se guardan en una estructura de datos denominada árbol Merkle. Para comprobar criptográficamente que las escrituras se guardaron correctamente, se puede recuperar una prueba de Merkle o recibo para cualquier identificador de transacción.

Sub-ledgers

Aunque la mayoría de los casos de uso implicarán un libro de contabilidad, proporcionamos la característica de subconsulta en caso de que se almacenen de forma semántica o lógicamente diferentes grupos de datos en el mismo libro de contabilidad confidencial.

Las entradas del libro de contabilidad se recuperan mediante su identificador de sub-libro de contabilidad. Confidential Ledger siempre asume un identificador de sub-libro de contabilidad constante determinado por el servicio para las entradas enviadas sin especificar un sub libro de contabilidad.

Usuarios

Los usuarios se administran directamente con Confidential Ledger en lugar de a través de Azure. Los usuarios pueden estar basados en AAD, identificados por su identificador de objeto de AAD o basado en certificados, identificados por su huella digital del certificado PEM.

Computación confidencial

La computación confidencial de Azure permite aislar y proteger los datos mientras se procesan en la nube. Azure Confidential Ledger se ejecuta en máquinas virtuales de Computación confidencial de Azure, lo que proporciona una protección de datos más sólida con el cifrado de datos en uso.

Confidential Consortium Framework

Azure Confidential Ledger se basa en el marco de consorcio confidencial (CCF) de código abierto de Microsoft Research. En ccF, las aplicaciones son administradas por un consorcio de miembros con la capacidad de enviar propuestas para modificar y controlar la operación de aplicación. En Azure Confidential Ledger, Microsoft Azure posee una identidad de miembro, lo que le permite realizar acciones de gobernanza como reemplazar nodos incorrectos en Confidential Ledger o actualizar el código de enclave.

Ejemplos

Se pueden encontrar ejemplos en ejemplos y en el archivo Léame de ejemplos.

Solución de problemas

Habilitar el registro

Los SDK de Azure para Java ofrecen una historia de registro coherente para ayudar a solucionar errores de aplicación y acelerar su resolución. Los registros generados capturarán el flujo de una aplicación antes de alcanzar el estado terminal para ayudar a encontrar el problema raíz. Consulte la wiki de registro para obtener instrucciones sobre cómo habilitar el registro.

Pasos siguientes

Contribuciones

Este proyecto agradece las contribuciones y sugerencias. La mayoría de las contribuciones requieren que acepte un Contrato de licencia para el colaborador (CLA) que declara que tiene el derecho a concedernos y nos concede los derechos para usar su contribución.

Cuando se envía una solicitud de incorporación de cambios, un bot de CLA determinará de forma automática si tiene que aportar un CLA y completar la PR adecuadamente (por ejemplo, la etiqueta, el comentario). Solo siga las instrucciones que le dará el bot. Solo será necesario que lo haga una vez en todos los repositorios con nuestro CLA.

Este proyecto ha adoptado el Código de conducta de Microsoft Open Source. Para más información, consulte las preguntas más frecuentes del código de conducta o póngase en contacto con opencode@microsoft.com si tiene cualquier otra pregunta o comentario.

Impresiones