Created on 2016-05-24 16:16
Published on 2016-05-24 17:29
The mantra of any good security engineer is: ‘Security is a not a product, but a process.’ It’s more than designing strong cryptography into a system; it’s designing the entire system such that all security measures, including cryptography, work together. — Bruce Schneier
As is too often the case, data security remains a low priority item at product selection all the way through project inception . Today, we have Data Virtualization atop disparate data sources having a resurgence in mindshare without equal concern being paid to data access related security concerns.
We have a plethora of software applications (or apps) in use, across a variety of computing devices, all equipped with connectivity to enterprise and personal databases. Thus, how would one create practical and scalable solutions to the obvious challenges this presents to data security?
Use entity relationship graphs (networks, webs, or clouds) to represent how all the actors (users and applications) involved in the data access process are related — and to a level of granularity that also includes the semantics of their associations.
Here's an illustration of how Virtuoso uses entity relationships and their semantics in regards to secure data virtualization over heterogeneous data sources (or Data Lakes).
By separating — rather than conflating — the identity of users and applications (software agents) and then expressing the relationship types semantics that exist between users and their applications, you end up with a scalable solution for creating data access policies, using existing open standards (URIs, HTTP, X.509, TLS, RDF, and First-order Logic), that’s only constrained by imagination as opposed to architectural myopia.
It's important to note that this approach works with existing open standards that collectively drive the current Internet & Web.
It's also important to note that only applications (not users) require X.509 certificates which ensures the following benefits:
http://tinyurl.com/hj9rjeq -- Faceted Browser page where the query targets entity relationships in a protected database (a/k/a Named Graph or Document) that's only accessible to specific users identified by a WebID (HTTP URI or Hyperlink that identifies a Person, Organization, or Software Agent) and authenticated using the WebID+TLS or WebID+TLS+Delegation protocols
http://tinyurl.com/hss58dw -- Faceted Browser page where the query targets entity relationships in a protected database (a/k/a Named Graph or Document) that's only accessible to users authenticated using any of the protocols presented in the Virtuoso Authentication Dialog .