B Uso de la biblioteca de control de acceso detallado incluida en la muestra de mármoles
Hyperledger Fabric proporciona control de acceso detallado a muchas de las funciones de gestión. Oracle Blockchain Platform proporciona un paquete de ejemplo de mármoles en el separador Developer Tools de la consola, mediante la implantación de una biblioteca de funciones que los desarrolladores de código de cadenas pueden utilizar para crear listas de control de acceso para funciones de código de cadenas. Actualmente solo soporta el idioma Go.
Antecedentes
El objetivo de esta biblioteca de control de acceso de ejemplo es proporcionar las siguientes funciones:
- Proporciona un mecanismo que le permite controlar qué usuarios pueden acceder a determinadas funciones de código de cadenas. La lista de usuarios y sus derechos es dinámica y se comparte entre los códigos de cadenas.
- Proporciona comprobaciones de control de acceso para que un código de cadena pueda comprobar la lista de control de acceso fácilmente.
- En el momento del despliegue del código de cadenas, le permite rellenar la lista de recursos y las listas de control de acceso con los miembros iniciales. Se debe proporcionar una lista de control de acceso para autorizar a los usuarios a realizar operaciones de lista de control de acceso.
Descargar la muestra
Fine-GrainedAccessControlLibrary.zip:Biblioteca de control de acceso detallado. Contiene funciones en Go que pueden utilizar los desarrolladores de código de cadenas para crear listas de control de acceso para funciones de código de cadenas.
fgACL_MarbleSampleCC.zip:Muestra de mármoles con listas de control de acceso implementadas. Incluye una variedad de funciones que le permiten examinar cómo trabajar con listas, grupos y recursos de control de acceso detallados para restringir las funciones a determinados usuarios/identidades.
fgACL-NodeJSCode.zip:Scripts Node.js que utilizan el SDK Node.js para ejecutar el ejemplo.
registerEnrollUser.jsse puede utilizar para registrar nuevos usuarios con Blockchain Platform.invokeQueryCC.jsse puede utilizar para ejecutar transacciones en una instancia de Blockchain Platform.
Terminología y acrónimos
| Término | Descripción |
|---|---|
| Identidad | Certificado X509 que representa la identidad del emisor de llamada o la identidad específica que el código de cadena desea comprobar. |
| Patrón de identidad |
Patrón que coincide con una o más identidades. Se sugieren los siguientes patrones:
El formato de un patrón es esencialmente una cadena con un prefijo. Por ejemplo, para definir un patrón que coincida con cualquier identidad de la organización "example.com", el patrón sería "%O%example.com". |
| Recurso | Nombre de todo aquello a lo que el código de cadenas desea controlar el acceso. Para esta biblioteca, es solo una cadena arbitraria con nombre contenida en un espacio de nombres plano. La semántica del nombre depende por completo del código de cadena. |
| Agrupar | Grupo de patrones de identidad. |
| ACL | Lista de control de acceso: entidad con nombre que tiene una lista de patrones de identidad, una lista de tipos de acceso como "READ", "CREATE", "INVOKE", "FORWARD" o cualquier cosa que el código de cadena desee utilizar. Esta biblioteca usará los tipos de acceso CREATE (Crear), READ (Lectura), UPDATE (Actualizar) y DELETE (Operaciones CRUD estándar) para mantener su información. Aparte de los cuatro que se relacionan con los elementos de esta biblioteca, son solo cadenas sin semántica implícita. Una aplicación puede decidir utilizar accesos de "A", "B" y "CUSTOM". |