• No results found

Access Control Model for Time Series Databases using NGAC

N/A
N/A
Protected

Academic year: 2022

Share "Access Control Model for Time Series Databases using NGAC"

Copied!
4
0
0

Loading.... (view fulltext now)

Full text

(1)

Access Control Model for Time Series Databases using NGAC

Alex Chiquito, Ulf Bodin and Olov Schelén

Dept. of Computer Science, Electrical and Space Engineering Luleå University of Technology, Luleå, Sweden 97187

{alex.chiquito, ulf.bodin, olov.schelen}@ltu.se

Abstract— In Industry 4.0 and Industrial Internet of Things (IIoT), large amounts of time-series sensor data is collected from devices and machines. Industrial data typically contain sensitive information that may harm the data owner should it leaks. Although such risks exist, selected data frequently needs to be shared in partner eco-systems to take advantage of expertise in analyzing the data and to synchronize between partners collaborating in the production system. Consequently, access control must support efficient data selection and sharing.

The access control should be capable of managing and enforcing access policies for different operations and with different levels of granularity, while being simple to properly maintain and potentially automate. In this paper we examine the possible use of Next-Generation Access Control (NGAC) for such access control. NGAC is an attribute-based access control (ABAC) standard based on relations between data elements to create, manage and enforce access control policies. We propose an Access control model that maps the NGAC policy language to the query language of time-series databases to facilitate a secure and efficient data sharing system for IIoT sensor data.

I. INTRODUCTION

Industrial data is considered the fuel of the Industry 4.0 revolution. Industries typically generate millions of such data points each day, including sensor data, sales records, bank transactions, machine and system logs, and so on. The ability to analyze time-series data generates valuable information and insights, as well as providing information about the future, which drives innovation and enables new business models [1].

Analyzing data often require expertise that is not available at the organization owning the data. Hence, although the data can contain sensitive information it needs to be shared in partner eco-systems. Moreover, data may need to be shared to synchronize between partners collaborating in the production system. Given the sensitive nature of production data, selective access control to the data is required to prevent sensitive data to be unintentionally shared.

Access control to databases is often managed at applica- tion level, which is sufficient in static environments, where changes in the data sources or structure are not expected.

However, IIoT applications are usually dynamic, in the sense that new machines, sensors, users and policies are frequently added or changed, causing that approach to lack the appropriate flexibility.

Managing a selective access control in a dynamic envi- ronment is non-trivial. Without an efficient policy model and access control system it can be a burdensome task to define the correct access policies for each user and

organization. Furthermore, there is not currently a single standard for expressing access control policies, which makes interoperability between existing access control models in the organization a potential issue [2].

Requirements for access control and sharing of industrial data include (1) support of efficient data selection, (2) the adding and removal of data sources in run-time, (3) capa- bility of managing and enforcing access policies to different operations and with different levels of granularity and (4) simplicity for the user to properly maintain and potentially automate.

This paper presents an access control model covering the above mentioned requirements. We present a discussion of the strengths and weaknesses of existing access control models and policy languages, NGAC and Extensible Access Control Markup Language (XACML) [3][4] in the context of time-series data. In addition, we present an onboarding process for new data sources, allowing for the automation and dynamic creation of access control objects and policies.

II. T ECHNOLOGIES OVERVIEW

A. International Data Space Association

The International Data Spaces Association’s Reference Architecture Model (IDS-RAM) is a data sharing solution created to enable the data economy and exchange between several stakeholders inside or outside an organization [5].

To achieve it, IDS-RAM uses a combination of contrac- tual agreements and attribute-based access control expressed using the Extensible Access Control Markup Language (XACML) [6][5].

B. NGAC

New Generation Access Control (NGAC) is a flexible access control framework proposed by the National Institute of Standards and Technology (NIST) to express and enforce attribute-based access control policies [3][4]. NGAC access policies are defined through relations between attributes.

These relations can be assignments (defining membership in

containers), associations (to derive privileges), prohibitions

or obligations. NGAC attributes are containers that group and

characterize data objects and roles in diverse ways. Attributes

can be either user attributes or object attributes. NGAC

objects reflect entities needing protection, while the user

attributes can represent roles, affiliations or other relevant

characteristics [4][7].

(2)

Standard NGAC recognizes a generic set of operations known as access rights, including basic input and output operations like read and write, as well as a standard set of administrative operations [4].

C. Comparison between NGAC and XACML

Ferraiolo et al. [4] discuss the differences between XACML and NGAC policy languages and conclude that NGAC is inherently more efficient than XACML. The better efficiency with NGAC is achieved by identifying the relevant policies, attributes and prohibitions and then combine them to get a single decision. XACML on the other hand computes and combines multiple local decisions.

According to Ferraiolo et al. [4], applying XACML in a heterogeneous environment requires fully specified data types and function definitions that produce a lengthy textual document, even if the policies are trivial. NGAC in contrast, thanks to its relations-based standard, avoids syntactic and semantic complexity using an abstract language for express- ing the policies.

The expression of Mandatory Access Control (MAC) policies is XACML’s main strength, thanks to its capability of defining policies as logical conditions of attribute values of varying types. The lack of that capability in NGAC is arguably its biggest drawback [4]. However, in XACML, conditions based on attribute values are not efficient for time series data as one attribute per row is needed, resulting in scalability issues.

D. Imposing NGAC over Relational Databases

Ferraiolo et al. [7] present how a standard called Next Generation Database Access Control (NDAC) can be used to manage the access request to tables, rows and columns in relational databases. NDAC provides an Access Manager, acting like an NGAC Policy Enforcement Point (PEP), which intercepts the SQL queries from applications and translates them into NGAC access control requests, which are then evaluated following the NGAC standard procedure.

NDAC performance tests imply however that it does not scale with the number of records, which is likely to cause problems in IIoT applications when a time series database is used [7].

E. Access control models on Time series data

Noury et al.[8] presents an access and inference control model to satisfy the time-series database security issues. The security requirements identified suggest that a user should be able to access time-series data in various time-based granularities, while not being able to see all the data, rather having value and time constraints.

The model described by Noury et al.[8] presents a novel method to enforce value and temporal constraints. However, it lacks the concept of containers that would decrease the complexity of maintaining the set of access rules and allow for possible automation.

Carminati et al.[9] proposes an expressive role-based ac- cess control model to secure data streams. This model makes

use of the query rewriting mechanism, redefining user queries so that they return only attributes to which the user has access to.

The Query rewriting concept proposed by Carminati et al.[9] applied to the value constraints presented by Noury et al.[8] could be combined with a pre-processing strategy, ex- ploding the NGAC capabilities to develop an access control model for a time-series database.

III. S OLUTION A RCHITECTURE

A. Approach Overview

In an attempt to meet the requirements stated in the introduction, we consider the solution proposed by Ferraiolo et al.[7] and examine the flexibility of the NGAC policy language in efficiently managing selective access to time- series data.

In the context of a time-series database, a data source model where every sensor/source creates its own table with a defined number of columns can be used. Thereby, an NGAC model where tables and columns are translated directly into NGAC objects can be created.

With the data source model, it can be determined whether or not a user with a certain identity is authorized to perform the requested transaction on the columns and tables to be affected by the query. The table and column elements can be retrieved from the TSDB query statements [7]. Note, however, that the application is still required to send the user identity as part of the metadata.

In our solution, the DB Access Manager illustrated in Figure 1 acts as an intermediary between the TSDB Engine and the application. It intercepts incoming queries and cre- ates NGAC authorization queries for the Decision Point to compute an authorization decision [4].

Applying a pre-processing approach allows the Access Control Model to compute the decision before retrieving any data from the TSDB and using just one query to the NGAC Policy Information Point (PIP). This reduces the overhead of the authorization process to the total query time, and avoid wasting time and effort in retrieving data that the user is not allowed to access.

B. Onboarding Process

In an IIoT environment, adding new sensors or upgrading the existing ones is usually a complex task which can lead

DB storage system

DB Access Manager

Sensor Interface

Sensor

Sensor Interface

Applica�on

TSDB

Engine

NGAC

Fig. 1. Solution Model

(3)

Application Access Manager NGAC Time Series Database

Submit Query

Submit extracted NGAC elements from the query to compute decision Return authorization decision

If Authorized

Perform Query Return Query results Return Query results

Fig. 2. Pre-filtering behavior diagram

to downtime or potential security breaches to the newly generated data. Making use of the sensor metadata, initial assignments to the NGAC containers could be done, pro- viding an automated starting secure point for newcomming sensors.

In our solution, NGAC attributes are created for the new sensor data stream as a user and for the new database table resource as an object. Finally, the newly created NGAC attributes are assigned to their default containers and the INSERT assignment from the sensor user to the respective table is created.

For a basic onboarding process, a series of NGAC oper- ations are performed as described in Algorithm 1, which is based on the NIST NGAC implementation [10].

By automatically assigning the user and object to their respective containers, all the access rules will be applied to the new sensor data without further configuration. Moreover, adding more information to the sensor metadata would allow to automatically assign it to user-created containers.

C. NGAC Configuration

As an example we consider the following database schema, where three sensors are connected to the Database:

Temp1, Temp2 and Encoder1. In this case, each sensor is designed to its own table.

Figure 3 shows how the NGAC object containers could be structured given the described Database schema. These initial containers are automatically created at the start of the system, however, the containers can be modified and new

Algorithm 1 Onboarding

1: Get sensor Name

2: CreateNode(uSensorName, User) . Create the NGAC user 3: CreateNode(oSensorName, Object) . Create the NGAC object 4: Assign(uSensorName, USensors) . Assign the new sensor to the existing

Sensors User Attribute

5: Asssing(oSensorName, OSensors) . Assign the new sensor object to the Sensors Object Attribute

6: Associate(uSensorName, oSensorName, w) . Associate the new sensor user with its object with write rights

Temp1.TimeStamp Temp1.ID Temp1.Measure Temp1.Tag

Temp2.TimeStamp Temp2.ID Temp2.Measure Temp2.Tag

E1.TimeStamp E1.ID E1.Measure E1.Unit E1.Tag

Temp1

Temp2

Encoder1

Database

Fig. 3. NGAC object containers

containers can be manually created at any time by an NGAC policy administrator.

In this example, consider three users: Alice, Bob and Charlie. Alice and Bob are machine engineers and should be allowed to read all the columns from the Temp1 and Encoder1 sensors, which are part of the Machine 1. While Charlie, the maintenance engineer, should be allowed to read the temperature sensors Temp1 and Temp2, he should not be able to read the "tag" column from the Temp1 table, as it may contain confidential information.

As illustrated in Figure 4, additional NGAC object and user containers can be created alongside the ones automati- cally generated from the original schema. The "Machine En- gineer" and "Maintenance Engineer" containers are created to allocate the users Alice, Bob and Charlie, while additional containers can be created to specify that all of them are Engineers and sensors can also be grouped following the same idea.

The described NGAC configuration would help to reduce the workload related to the maintenance of the access con- trol rules while simplifying the enforcement of fine-grained access policies to the database resources.

Figure 4 also covers the assignments needed to enforce the desired access control policy, the sensors are automatically assigned the capability of INSERT to their respective object, while two new assignments are to be manually created to grant SELECT capabilities to their respective container. It can be observed that the creation of the additional object

Encoder1

Temp1 Temp2

TempSensors

Machine1

ua_deny(Maintenance Engineers, SELECT, Temp1.tag)

Prohibi�ons

t1

INSERT

Temp1

t2

INSERT

Temp2

e1

INSERT

Encoder1

Machine

Engineer

SELECT

Machine1

Maintenance

Engineer

SELECT

Temp1

Assignments

Object Containers

Engineers t1

t2

e1

Sensors

User Containers

Alice Bob

Charlie

Machine Engineers

Maintenance Engineers

TableSensors

Fig. 4. NGAC configuration example

(4)

containers help to simplify and reduce the needed assign- ments. Lastly, an NGAC prohibition is needed to deny the reading capability to the tag column in Temp1 sensor for the Maintenance Engineer.

IV. D ISCUSSION

The presented solution architecture aims to cover the stated requirements while addressing the identified weak- nesses of the access control models described in the re- lated work. Furthermore, the described onboarding procedure presents an initial approach to automate the creation of access control policies.

Applying access control policies in row-level for time series data, while keeping a flexible and standard policy expression, showed to be a critical weakness of the reviewed policy language alternatives.

NGAC does not natively support the expression of tem- poral and value constraints as it cannot express policies as logical conditions of attribute values. This impacts the capa- bility of expressing value-based constraints on the data and therefore the granularity of the expressible access policies.

While XACML is capable of expressing logical conditions of attributes, the approach would require the creation of row- level object attributes to apply the conditions on, which in a TSDB is not practical.

The Open Group has developed conditional policies for NGAC to achieve "Context Sensitivity” within an access control policy. This development allows policy rules to be enabled or disabled by conditional expressions over context variables. This capability, along with event-driven automated dynamic policy change provides additional flexibility and expressiveness to the NGAC policy language and system.

Future work is planned to provide attribute values and prohibitions for more expressive control over data objects managed by a policy.

While future work for NGAC is needed to fulfill the row- level granularity requirement, XACML would also require additional modules for it to work efficiently with the number of rows involved in a TSDB solution. This, added with the improved flexibility of NGAC and the important advantages presented in [4], gives NGAC an edge over XACML for this type of application.

Different approaches could be used for the query inter- ception process for computing an access decision. Using a combination of pre-processing and post-processing, similar to the approach taken by Ferraiolo et al.[7], could overcome the NGAC limitation described previously. However, due to the amounts of data typically processed in a TSDB, a row-by-row enforcement solution would not be efficient.

Implementing a query rewriting approach could achieve similar results without impacting the overall performance.

However, a new access policy database is needed to store the time and value constraints not contained in the NGAC policies. In addition, the query rewriting approach would not require any change to the existing NGAC standard, allowing it still to function as a general access control model for the organization systems [2].

V. C ONCLUSION AND F UTURE W ORK

Given the importance of sharing time-series data in in- dustries and its sensitive nature, access control is critical. In this paper, a model to manage access control for industrial time series databases is presented. This model is defined to meet requirements of (1) efficient data selection, (2) runtime adding and removal of data sources, (3) flexible management and enforcement of access policies and (4) simple maintenance possible to automate.

The access control model intercepts incoming queries from applications to the database. Using a pre-processing approach it is possible to compute an access decision before retrieving data from the database. Additionally, an Onboarding proce- dure was presented to automate the initial creation of objects, containers and assignments of new sensors and users.

The model presented in this paper enables to deploy simple and efficient access control in existing time-series databases, as well as providing flexible and automated ways of managing dynamic environments. Furthermore, the usage of a standard policy language enables the solution to integrate seamlessly to higher level access control models existing in the organization using the same language.

As part of the future work for the onboarding procedure, usage of sensor metadata could be enhanced to automatically assign and create additional containers and rules.

A CKNOWLEDGMENT

We would like to thank Rance DeLong from The Open Group for the input and support regarding The Open Group NGAC implementation. This research work has been funded by the Arrowhead Tools research project with Grant Agree- ment no. 826452.

R EFERENCES

[1] H. Richter and P. R. Slowinski, “The data sharing economy: on the emergence of new intermediaries,” IIC-International Review of Intellectual Property and Competition Law, vol. 50, no. 1, pp. 4–29, 2019.

[2] K. K. Kolluru, C. Paniagua, J. van Deventer, J. Eliasson, J. Delsing, and R. Delong, “An aaa solution for securing industrial iot devices using next generation access control,” 05 2018, pp. 737–742.

[3] D. F. Ferraiolo, L. Feldman, and G. A. Witte, “Exploring the next generation of access control methodologies,” Tech. Rep., 2016.

[4] D. Ferraiolo, R. Chandramouli, D. Kuhn, and V. Hu, “Extensible access control markup language (xacml) and next generation access control (ngac),” 03 2016, pp. 13–24.

[5] International Data Space (IDS), “International data space - reference architecture model,” 2019. [On- line]. Available: https://www.internationaldataspaces.org/wp-content/

uploads/2019/03/IDS-Reference-Architecture-Model-3.0.pdf [6] O. Standard, “extensible access control markup language (xacml)

version 3.0,” 2005.

[7] D. Ferraiolo, S. Gavrila, G. Katwala, and J. Roberts, “Imposing fine- grain next generation access control over database queries,” 03 2017, pp. 9–15.

[8] A. Noury and M. Amini, “An access and inference control model for time series databases,” Future Generation Computer Systems, vol. 92, pp. 93–108, 2019.

[9] B. Carminati, E. Ferrari, J. Cao, and K. L. Tan, “A framework to enforce access control over data streams,” ACM Transactions on Information and System Security (TISSEC), vol. 13, no. 3, pp. 1–31, 2010.

[10] “Nist policy machine core version 2.0-alpha.10.1.” [Online]. Available:

https://github.com/PM-Master/policy-machine-core

References

Related documents

I skolan får olika läromedel ofta en central roll i undervisningen, vilket kan leda till att läromedlet blir en viktig tillgång för såväl lärare som elever för att nå de

Arvidsjaur 31ºjuni-augusti = 1,024 ⋅0,438⋅1,020 = 0,458 [12] Då omräkningsfaktorn multipliceras med SPs framtagna årsmedelvärden för godkända solfångare, se bilaga 1, ger det

That the highly polymorphic microsatellite loci failed to detect sig‐ natures of genetic divergence suggests: (a) that genomic divergence across geography and hosts may be limited

Högvattnens bottentransport rul- lar grovkornen (fingrus och sand) fram mot myn- ningarna där de avlastas i nya bankar, vilkas stränder höjs när de sjunkande

Besides, the level of parallelism of the DPF can be further increased in two ways so that the execution time of the parallel implementation of the DPF can be further shortened;

Annually, 7.5 million young people (15–24 years) are treated for an injury in European Union hospitals (European Association for Injury Prevention and Safety Promotion, 2013),

• If many small register file memories with only one write port and few read-ports are used in a design, the area cost for an ASIC port will be relatively high compared to the area

Cluster analysis is introduced in spatio-temporal scales from one spatial point to 3-D spatial points through derived spatio-temporal distance rela- tion. K-Means algorithm and