System Architecture and Interfaces
This section covers architectural skeleton of ID Builder service.
A user or a machine reach ID Builder service with use of Direct Data Link, a connectivity and integration platform, with use of Orchestration engine workflow, or by directly reaching application endpoints or web UI. The two former options may enhance client capabilities by providing rich options in interaction with ID Builder service, including automation.
The service is using MACMA as a service responsible for authenticating and authorizing the user sending a request.
To serve requests, the ID Builder service in its current state does only need to rely on one database instance, called Module Database in this scheme, which is not restricted to one particular database provider. Only in legacy version of ID Builder service, the service must also rely on an additional external database instance, called Legacy Database. This must be an instance of Oracle database. In the legacy case, the Module Database stores only runtime configurations and the majority of data is stored in the External Database.
The relations between databases have been described in greater detail in the section devoted to setting ID Builder service up.
The ID Builder service is designed to be manageable for Azure deployment (which in the legacy case is also possible, but hindered by the dependency on external database).
In Azure deployment, the self contained ID Builder service (without database), Module Database, Portal UI and MACMA, all operate in separate clusters each.
Module database stores Runtime Configuration entities for different tenants. Based on latest configuration of a tenant, all the other entites regarding this tenant either are stored in Module Database as well or are stored in Legacy Database instead. Below you will find a graph that may serve as a visual representation of the relations between the two databases in case of ID Builder service using Legacy Database.
Architecture overview
The whole module consists of a single service. The service is running without a module gateway.
For external modules, the ID Builder provides a REST API that can be called by other modules using http(s). ID Builder is only dependant on the Nexeed Portal and MACMA modules and has no other modules it depends on.