Configurar Oracle Blockchain Platform para la aplicación de ejemplo CBDC mayorista
Después de crear todas las instancias necesarias de Oracle Blockchain Platform y sus productos de requisitos, deberá configurar los usuarios y roles, agregar las organizaciones participantes a la organización fundadora y activar la base de datos de historial enriquecida.
Configuración de grupos de IDCS en instancias de Oracle Blockchain Platform
Para obtener información adicional sobre los roles incorporados de Oracle Blockchain Platform y cómo asignarles usuarios, consulte Configuración de usuarios y roles de aplicación.
Para obtener información adicional sobre los roles de aplicación de ejemplo de CBDC al por mayor, consulte Flujo de trabajo de aplicación de CBDC al por mayor.
En Oracle Blockchain Platform, se deben implantar las siguientes asignaciones de roles de aplicación:
- Grupos de propietarios de sistemas: asigne el grupo de IDCS de propietario de sistema único combinado (que contiene todas las personas responsables del sistema) al rol de aplicación
REST_CLIENT
de la instancia de Oracle Blockchain Platform Digital Assets Edition del propietario del sistema. No asigne grupos específicos de persona individuales directamente a la instancia de Oracle Blockchain Platform Digital Assets Edition. - Grupos de organizaciones participantes: para cada organización participante, asigne el grupo IDCS de una sola organización participante combinada (que contenga todos los grupos específicos de persona para esa organización) al rol de aplicación
REST_CLIENT
de la instancia correspondiente de Oracle Blockchain Platform Digital Assets Edition. - Roles administrativos: asigne los grupos administrativos relevantes, como
System_Admins
yOrg1_Admins
, al rol de aplicaciónADMIN
de su respectiva instancia de Oracle Blockchain Platform Digital Assets Edition.
Esta configuración garantiza que tanto el propietario del sistema como los grupos de organizaciones participantes tengan el acceso necesario mediante el rol REST_CLIENT
, mientras que los privilegios administrativos se gestionan correctamente mediante el rol ADMIN
.
Siga estos pasos para asignar los grupos a roles de aplicación.
- Conéctese a su cuenta de Oracle Cloud Infrastructure.
- En la consola, haga clic en el menú Navegación en la esquina superior izquierda.
- En Identidad, seleccione Dominios.
- En la página Dominios, haga clic en Oracle Identity Cloud Service.
- En el menú de navegación de Oracle Identity Cloud Service, seleccione Oracle Cloud Services. Localice la instancia de Oracle Blockchain Platform a la que desea asignar roles de grupo. Abra la página Detalles de esa instancia.
- Vaya a la página Roles de aplicación para ver los roles de aplicación de Oracle Identity Cloud Service que se muestran en el navegador de recursos.
- Seleccione el rol que desea asignar y expanda el rol. Haga clic en el menú Más del rol y seleccione Asignar grupos.
- En el cuadro de diálogo Asignar grupos, seleccione los grupos que desee asignar al rol y haga clic en Asignar.
Recuperar ClientId
y ClientSecret
Visual Builder utilizará Oracle Blockchain Platform ClientID
y ClientSecret
. Tendrá que actualizar estos parámetros en Visual Builder más adelante, como se describe en Configuración de backends de Visual Builder.
Complete los siguientes pasos para recuperar el ID de cliente y el secreto de cliente para una instancia de Oracle Blockchain Platform:
- Conéctese a su cuenta de Oracle Cloud Infrastructure. Asegúrese de que tiene privilegios administrativos suficientes para gestionar la configuración de OAuth.
- En la consola, haga clic en el menú Navegación en la esquina superior izquierda.
- En Identidad, seleccione Dominios.
- En la página Dominios, haga clic en Oracle Identity Cloud Service.
- En el menú de navegación de Oracle Identity Cloud Service, seleccione Oracle Cloud Services. Busque la instancia de Oracle Blockchain Platform para la que desea recuperar el ID de cliente y el secreto de cliente. Abra la página Detalles de esa instancia.
- Al abrir la página de detalles de la instancia, el separador por defecto que se muestra será el separador Configuración OAuth. Este separador contiene información esencial sobre la configuración de OAuth para la instancia de Oracle Blockchain Platform.
Encontrará campos con las etiquetas Client ID y Client Secret en la sección General Information. Estas credenciales se utilizan para autenticar solicitudes de API en Oracle Blockchain Platform.
Configuración de varias organizaciones
Si está creando una red compleja de Oracle Blockchain Platform con varias organizaciones, agregue participantes al fundador. En la Guía de administración de Oracle Blockchain Platform se proporciona una visión general de este proceso: Adición de organizaciones participantes de OBCS a la red.
Configuración de la base de datos de historial enriquecido para Oracle Blockchain Platform
Para obtener más información sobre la configuración y el uso de la base de datos de historial enriquecida, consulte Creación de la base de datos de historial enriquecida.
Antes de realizar estos pasos, debe haber creado una instancia de Autonomous Database como se describe en Aprovisionamiento de Autonomous Database para activar la base de datos de historial enriquecida para Oracle Blockchain Platform.
En modo genérico, configure la instancia única de Oracle Autonomous Database para la instancia del propietario del sistema de Oracle Blockchain Platform. En modo confidencial, debe configurar cada organización participante y el propietario del sistema con instancias independientes de Oracle Autonomous Database.
- Abra la consola de Oracle Blockchain Platform para la instancia de red.
- Haga clic en el menú Más acciones en la esquina superior derecha y seleccione Configurar historial enriquecido.
- Especifique una conexión a la base de datos Oracle proporcionando la cadena de conexión y las credenciales para acceder a la base de datos Oracle y escribir en ella. Tenga en cuenta que las credenciales que proporciona son las credenciales de la base de datos y Oracle Blockchain Platform no las gestiona.
- Haga clic en Guardar para configurar la base de datos de historial enriquecida.
Crear inscripciones
Debe crear manualmente las inscripciones para los usuarios en los grupos System_Admins
y Org_Admins
.
Las inscripciones en el proxy REST de Oracle Blockchain Platform proporcionan un mecanismo para que los usuarios interactúen con la cadena de bloques sin necesidad de un certificado de inscripción, lo que simplifica las llamadas de API mediante la asignación de identidades de aplicación a los miembros de la cadena de bloques. Para iniciar cualquier llamada al código de cadena, las inscripciones deben establecerse en Oracle Blockchain Platform.
La aplicación mayorista CBDC gestiona la creación de inscripciones para los usuarios durante la configuración de la cuenta; sin embargo, cuando un usuario administrador del sistema inicia sesión por primera vez, no existe ninguna inscripción. Por lo tanto, si este usuario intenta crear una cuenta, la llamada RestProxy
fallará. Por lo tanto, es esencial crear una inscripción para el grupo System_Admins
.
Al configurar cuentas, se crean inscripciones para las organizaciones respectivas. Por ejemplo, cuando se establecen cuentas para el propietario del sistema, se generarán las inscripciones correspondientes. Sin embargo, si alguna cuenta de organización participante se crea a través de la página del administrador del sistema, las inscripciones no se crearán automáticamente para esas organizaciones. En este workflow de CBDC mayorista, debe definir las cuentas de administrador de la organización en la página de administrador del sistema. Por lo tanto, debe crear inscripciones manualmente para el grupo de administradores de la organización, ya que estas inscripciones no se generarán automáticamente debido a la estructura organizativa distinta entre el banco central y las instituciones financieras.
Consulte Agregar inscripciones a un proxy REST para obtener información completa sobre cómo crear las inscripciones.
Recuperar RestproxyId
Visual Builder utilizará el valor RestproxyId
. Tendrá que actualizarlo en Visual Builder más adelante, como se describe en Configuración de backends de Visual Builder.
Para recuperar RestProxyId
para una instancia de Oracle Blockchain Platform, debe llamar a las API de la consola de Oracle Blockchain Platform mediante una cuenta de usuario administrativo. La autenticación se puede realizar mediante la autenticación básica o OAuth 2.0.
Método de Autenticación
Para OAuth 2.0, consulte la documentación en OAuth 2.0 Access Token Based Authentication para implementar el flujo de autenticación necesario.
Punto final de API para recuperar RestProxyId
Utilice la API de la consola de Oracle Blockchain Platform para obtener RestProxyId
enviando una solicitud al siguiente punto final:
GET <oracleblockchainplatform_url>/console/admin/api/v2/nodes
Esta llamada de API devolverá una respuesta que contiene detalles sobre los proxies REST configurados en la instancia.
Para obtener más información sobre la API de la consola, consulte la siguiente documentación: Obtención de la lista de nodos.
Detalles de Respuesta
En la respuesta, busque la sección con la etiqueta RESTProxies
, donde encontrará el RestProxyId
correspondiente. La estructura de la respuesta incluirá varios atributos asociados a cada nodo de proxy REST.
"RESTProxies": [
{
"status": "up",
"extInfo": [],
"displayName": "restproxy",
"RESTProxyId": "48021a2c-e62b-40cd-b7ca-71dda883521d-restproxy",
"url": "https://bank3-oabcs1-hyd.blockchain.ocp.oraclecloud.com:7443/restproxy",
"mspId": "Bank3"
}
]
Despliegue del Código de Cadena para la Aplicación de Ejemplo CBDC Mayorista
Ahora puede crear un canal y desplegar el código de cadenas de la aplicación de ejemplo en él.
Crear vistas de base de datos de historial enriquecido
Después de crear la base de datos de historial enriquecida para la instancia de Oracle Blockchain Platform, puede ejecutar el script de creación de vista de base de datos para crear las vistas en la base de datos de historial enriquecida y generar el punto final de ORDS.
clientId
, clientSecret
y el token de portador para autenticar y acceder al punto final.
- Descargue el script de creación de la vista de base de datos.
- Abra la consola de Oracle Blockchain Platform.
- Vaya a la página Activos digitales.
- En la barra lateral izquierda, vaya a la aplicación Wholesale CBDC.
- Descargue el script del área Definiciones de vista de Oracle Database para WholesaleCBDC.
- Después de descargar el script, consulte Oracle Database View Definitions for Wholesale CBDC para obtener más información sobre cómo ejecutarlo.
- El script devuelve el punto final de ORDS, el ID de cliente, el secreto de cliente y el token de portador.
- En el modo genérico, todas las organizaciones utilizan una única configuración de punto final ORDS. El script devuelve puntos finales para las cuentas en tres ámbitos: cuentas individuales, cuentas de nivel de organización y todas las cuentas.
{ ORDSEndpoint: 'https://<base_URL>ords/<user_name|alias>/<resource_link>', { "ORDSEndpoint": { "Accounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERN", "OrgAccounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERNOrgAccounts", "AllAccounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERNAllAccounts" }, clientId: '<clientId>', clientSecret: '<clientSecret>', bearerToken: { access_token: '<BearerToken>', token_type: 'bearer', expires_in: 3600 } }
- En el modo confidencial, cada organización, incluido el propietario del sistema, tiene su propia configuración de ORDS. Los puntos finales del propietario del sistema incluyen el acceso a todas las cuentas. Las organizaciones participantes solo tienen acceso a sus propias cuentas de nivel de organización.
Propietario del sistema:
{ ORDSEndpoint: 'https://<base_URL>ords/<user_name|alias>/<resource_link>', { "ORDSEndpoint": { "Accounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERN", "OrgAccounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERNOrgAccounts", "AllAccounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERNAllAccounts" }, clientId: '<clientId>', clientSecret: '<clientSecret>', bearerToken: { access_token: '<BearerToken>', token_type: 'bearer', expires_in: 3600 } }
Organización participante:{ ORDSEndpoint: 'https://<base_URL>ords/<user_name|alias>/<resource_link>', { "ORDSEndpoint": { "Accounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERN", "OrgAccounts": "https://<base_URL>ords/ALIAS_NAME/BASE_PATH/PATTERNOrgAccounts" }, clientId: '<clientId>', clientSecret: '<clientSecret>', bearerToken: { access_token: '<BearerToken>', token_type: 'bearer', expires_in: 3600 } }
- En el modo genérico, todas las organizaciones utilizan una única configuración de punto final ORDS. El script devuelve puntos finales para las cuentas en tres ámbitos: cuentas individuales, cuentas de nivel de organización y todas las cuentas.
ORDS_REST_BASE_URL/ords/ALIAS_NAME/BASE_PATH/PATTERN
- ORDS_REST_BASE_URL: URL base del servicio ORDS.
- ALIAS_NAME: alias de base de datos o esquema configurado en ORDS.
- BASE_PATH: ruta base para los servicios RESTful.
- PATTERN: patrón de punto final específico para el servicio RESTful.
ORDS_REST_BASE_URL/ords/ALIAS_NAME/oauth/token
clientId
clientSecret
- Punto final de ORDS (solo punto final
Accounts
; los puntos finalesOrgAccounts
yAllAccounts
se derivan internamente) - URL base OAuth:
ORDS_REST_BASE_URL/ords/<userName|aliasName>