Objective Statement: VuConn helps analysts, customers, dbas, security and engineering teams implement data security
controls, user permissions, user access, and databases objects at scale. The virtualization layer provides extended functionality not generally available
to data servers. Implementing VuConn is simple, as it sits in between requests and the
databases connection, the platform doesn’t require any changes to your data, schema or how your users or applications interact with data.
Overview: At the heart of every internet based application is a database backend.
Direct connections allow developers full logical control of how data is interacted with;
the connection enforces a series of permissions, however it is still a shared environment that requires developers to have a level of trust amongst
each other. For data that requires to be shared amongst not trusted users, APIs and GraphQL are standard options.
APIs allow controlled access to data, enabling organizations to share information securely with external entities
while maintaining control over who can access what. This is essential for collaborations and partnerships. However, this precision removes
all flexibilty from then end user. APIs requires each new use case to be communicated to a developer inorder to implement a new API endpoint.
The middle man approach for APIs does not scale well especially as developers can be overburdened with one off requests.
GraphQL, developed by Facebook, introduced a query language for APIs that allows clients to request only the data they need.
It offers a more flexible alternative to traditional REST APIs for certain use cases, but its flexibility is still limited.
VuConn provides the full flexibility of SQL with the security restraints of REST APIs and GraphQL.
Pipeline Steps:
-
Each user has a virtual user connection that allows individual and group permissions to be handled through the http or tcp connection protocols.
-
When a query is sent through VuConn, the request is evaulated for the necessary permissions. If valid, modificaitons to the request are made to enforce rules.
-
The rewritten query is evaluated for any temporary credentials that should be considered.
-
The final request is then forwarded to the target server.