Abstract
In the next-generation intelligent power grid, known as the smart grid, various objects can access systems in several network environments, and, accordingly, access control security becomes critical. Thus, to provide users with secure services in the smart grid, a new access control security model is needed. This paper proposes a dynamic access model for secure user services in the smart grid environment. The proposed model analyzes the user's various access contexts and chooses an appropriate context type among the predefined context types. And then it applies the context-based user security policy to allow the user's access to services dynamically. Therefore, it provides stronger security services by permitting context information-applied security services and flexible access control in various network environments. It is expected that this study will be used to solve important access control issues when establishing the smart grid.
1. Introduction
Recently, with the development of renewable energy, interest in efficient energy management has increased. The next-generation intelligent power grid, smart grid, unlike existing provider-centered one-way energy operation systems, is a two-way operating system in which consumers participate in energy use and operation [1–3]. In addition, smart grid technology, interlocked with home networks, allows the control of information appliances no matter when or where the user is. However, to securely provide these and other services, it is important to secure home network security, protect private information, and restrict access to home devices.
For example, if a user requesting services receives authorization with his or her user information and receives the same services regardless of location, time, or access device, a severe security issue may occur if the user's authority is stolen or the device is lost.
In the infrastructure of existing services, access rights to a resource are granted only after the execution of a user authorization phase. In contrast, for the resources or services executed in various network environments like the smart grid, the user's accessibility should change depending on the ambient context information.
Currently, the smart grid has a variety of security vulnerabilities. In particular, security measures for various network environments and corresponding new services are lacking [4–6].
Therefore, to provide secure user services according to ambient context, it is also necessary to provide dynamic, context-adaptive services. To this end, various sensors and computers should collect and effectively share environment information, find the contexts of the user and macroenvironment, and provide appropriate services for them.
Context refers to the information that characterizes and defines the state of entities in the real world. Context awareness is a technical method of interacting with this context and characterizing a human's current context [7]. Context awareness computing application technology includes methods based on the correlation between the user and services. Its implementation and application technologies can be devised in various forms [8–10]. Recently, security-related areas that consider context awareness have received attention, and various studies on several security models have been actively carried out [11–13]. It is necessary to study a new access control security model, applying this to the smart grid environment to provide security services according to time, space, and user context.
Access control is a well-known security mechanism to give access permission or denial message to an access request according to the predefined access policies, in which the system monitors and controls who can access the specific data and also what they can do onto that data. Unlike general access control, dynamic access control uses place (where), time (when), and purpose (why) according to context information as the conditions for access permission [14].
This paper proposes a dynamic access control model to provide users with secure services in the smart grid environment. The model proposed in this paper analyzes ambient context information according to context type and, accordingly, dynamically manages service authority for the users. In addition, the security levels are applied differently depending on the users’ context information, even to users with service authority. Thus, the proposed model provides context-adaptive security services and flexible access controls in the various network environments of the smart grid. In addition, it inspects ambient conditions in real time, dynamically grants access right differently depending on them, and provides more powerful security services than existing resource security services.
This study is organized as follows. Section 2 examines two related models from among the existing access control security models. Section 3 proposes a model limiting dynamic access rights depending on changes in the ambient context information. Section 4 describes an application of the proposed model to the smart grid environment. Lastly, Section 5 concludes the paper and proposes future research topics.
2. Related Work
This section examines two related areas of research: role-based access control (RBAC) and the context awareness access control (CAAC) model. Additionally, it describes the necessity of a security model providing dynamic security services according to context in the smart grid environment.
2.1. Role-Based Access Control (RBAC)
The RBAC model is a technology that does not give access rights to system resources by user or predefined access control rules, but by the group to which the user belongs, that is, the user's role [15–19]. This model classifies rights not to the user unit but to the user's role. In addition, the roles have a hierarchical structure, and through the structure ancestor's access rights can be inherited to its descendants easily, and hence, access rights can be more effectively managed in this hierarchical structure. Figure 1 shows the characteristics of a general role-based control model. Sandhu et al. proposed role-based access control by classifying models into the following four kinds [20].
RBAC0: role-based access control basic model.
RBAC1: basic model with the addition of role hierarchy, an inheritance concept.
RBAC2: basic model with the addition of context constraint conditions.
RBAC3: model integrating RBAC1 and RBAC2

Role-based access control model.
The RBAC model classifies access rights by role and grants the responsibilities and rights of the individual user accordingly. Thus, by providing security services through the access control of the user for resources, it maximizes the efficiency of security management. However, the RBAC model cannot perform dynamic access control based on contexts such as time and space.
Neumann and Strembeck proposed the xoRBAC model that limits role-based access control to use context information in access control decisions [21]. A context constraint describes the condition that satisfies a context information attribute to permit a specific calculation by limiting role-based access control. Access control is limited by comparing the real value of the context information attributes with predefined conditions. The context constraints are formed of a tuple of context attribute, function, and condition. The decision regarding rights is made according to the rights of a specific subject or role. Thus, as in Figure 2, the context is a condition that limits the granting of rights. Rights relate to several context constraints, and, when all context constraints have true values, access is permitted.

xoRBAC model.
2.2. Context Aware Access Control (CAAC)
The CAAC model is an access control technology that uses context awareness by dynamically measuring the current context of the user's access demand and evaluating it. In other words, it is a model that decides rights by adding context information to the existing RBAC model [22]. The CAAC model access control methods are given by the following four definitions [23, 24].
Context type (CT): an element of context constraint that defines context information.
Context set (CS): a set of all context types in an application
Context implementation (CI): a function of context types defined by
Context constraint (CC): the definition of context information using CT in a formulaic form.
Condition CT is an element of CS. OP is a logical operator in set VALUE is a specific value of CT.
Authorization policy (AP): a policy providing access rights (R) to resources for the user or role (P) according to context constraint (C).
An authorization policy as a triple, AP = (R, P, C), where R is the subject in this policy, which could be a user or a role, P is the permission in this policy, which is defined as a pair <M, O>, where M is an operation mode defined in C is a context constraint in this policy.
Data access (DA): an attempt to access specific information using the user's role and context information.
DA = (U, P, RC) where U is a user in the user set that issues this data access, P is the permission this user wants to acquire, Runtime context (RC) is a set of values for every context type in the context set.
DA (U, P, RC) is granted if there exists an AP (
C is evaluated as true under RC.
Figure 3 shows the CAAC model's policy decision process. This is similar to the RBAC model, but, by adding a context constraint element, it decides whether to grant rights according to a context value.

CAAC authorization policy structure.
2.3. Demands for Dynamic Access Controlling
Recently published access control schemes have various characteristics for providing flexibility and security. Generalized temporal role-based access control (GTRBAC) can give access rights under the time constraints and the periodical configuration [25, 26], Privacy role-based access control (PRABAC) can provide stronger privacy policy to the access time [27, 28]. And Geo-RBAC model is considering the user location information before giving the access permission [29]. Nonetheless, the smart grid is not a simple architecture and it has many kinds of context and circumstances, the existing access control models can cover all aspects of the smart grid environment.
In the smart grid environment, each model is distributed and arranged for cooperative performance and various objects may access the systems. This access control management for each object is very closely related to security issues. Thus, for efficient access control of smart grid, it is necessary to systematically analyze security requirements and a policy to solve them is needed. In addition, to apply access control policy more efficiently and consistently, an access control mechanism is necessary.
3. Dynamic Access Control Modeling (DACM)
This section describes a dynamic access control model that can be applied to the smart grid environment for secure user services. Access control in the smart grid environment should consider scalability, accessibility for many users, and distinctiveness of two-way communication through a variety of equipment. The existing RBAC model controls access based on many roles in various contexts, so it has been difficult to prevent dynamic access. Therefore, this proposed model provides a dynamic access control for each context-based CAAC model.
3.1. Proposed DACM Structure
The proposed DACM model collects context information in the user authentication phase via the context awareness manager. In each domain, it performs mapping and follows the policy of the relevant DB. In the access right decision phase, it maps each domain, classifies the task, tags the roles, and applies the role in context.
Context information type for dynamic access control in the proposed model is defined as follows. Context information is obtained by the user by scanning for environment information at the time of services access.
Source context data types are listed below:
Regular_Role_ID,
Password,
Time_Stamp_Value,
Location Type,
Location Value,
Access_Device,
Access_Format,
Access_Network_type,
Task_Attribute.
Figure 4 shows the structure of the proposed dynamic access control model. The model performs access control by real time context information as follows.

Overview of dynamic access control model.
Step 1.
The user attempts access to a certain data entity using an already issued authentication key. For providing dynamic access, Access Ticket is issued with UserID, Session Key for runtime context (RC), and Share Key. Session Key can be created using the user's current runtime context and its mapped information. Share Key is calculated from the user access key value.
Access Ticket = {UserID ∥ Session_Key for RC ∥ Share Key}
Step 2.
The use of public services does not require an access license. For services for which different access license levels have been assigned, the user asks for an access right to the management server and waits for a response.
Step 3.
The system applies the metadata value entered in the basic role to grant a new Role_ID.
Role_ID = {Regular_Role_ID, Time_Stamp_Value, Location Type, Access_Device or Access_Format, Task_Attribute}
Step 4.
The granted Role_ID forms a tuple in which the metadata are stored, and role tagging is carried out.
Step 5.
The tuple relevant to the tag-granted Role_ID satisfies the condition specified in the relevant domain and the user receives the access license. In this case, even for already licensed Role_IDs, the DB domain is decided by a Role_new_ID and regenerated according to the metadata value generated in the access and authorization is checked.
Tuple format is
Role_ID,
Service Name,
Data,
Access Permission Check Value,
Rule Domain
3.2. Policy Management for a Secure Client Service
The constraint conditions for the policy management of the proposed model are as follows. The regular ID and the Domian ID of the user are verified, and then the user password is also verified. If the two values are correctly verified, access is granted.
After the access is made, the data necessary for the user's context awareness is scanned. The input values include Time_Stamp_Value, Location Type, Location Value, Access_Device, Access_Format, Access_Network_Type, and Task_Attribute.
First, Time_Stamp_Value checks if the time for the user access is authorized. Regarding the user's Location Type, the user's access network type is checked. Different security levels can be granted by network type. The Access_Device has a limited range of available services according to device, so the access of the services and the results are decided by Access_Format. In addition, the user's basic right regarding the Task_Attribute access services is checked.
Definition of user's context data constraint:
Role_ID = if (DB_Domain_1 ∥ DB_Domain_2 ∥ DB_Domain_n)
Password = if ((Passwordinput = Trust_Password) = TRUE)
Time Constraint = if (Time_Stampinput > Time
Location Type = Switch (case 1 (in HAN), case 2 (in LAN), case 3 (in WAN), etc.)
Network Type = Switch (case 1 (use Zigbee), case 2 (use WCDMA), case 3 (use WiFi), case 4 (use Wibro), etc.)
Access Device = Switch (case 1 (use Remot Contorller), case 2 (use Cellular Phone), case 3 (use Pc & Mobile), etc.)
Access Format = if (Typeinput = (Type_1 ∥ Type_2 ∥ ⋯ Type_n))
Task_Atribute = ServiceRequest_Task_Type (Public ∥ Private ∥ Administrate)
Figure 5 shows the policy management process of the proposed model.
Sub, Domain: sets subject a and domains.

Overview of policy for access control model.
4. DACM for a Secure Client Service in the Smart Grid
This section shows how to apply the suggested dynamic access control model to the smart grid environment specifically. The general existing access control model is designed properly for a single system, so some parts must be modified to handle the complexity of the smart grid. A proper access control model for the smart grid should efficiently manage many users, devices, and systems and should be able to conduct subtle control. The DACM flow suggested for the smart grid environment is shown in Figure 6.

A control flow with the proposed DACM in smart grid.
Role A can be defined as the user with upper network access rights in the smart grid environment. If the user requests services remotely to the home or office, the user's access rights change dynamically with context.
If the user requests services, then context information collection can be conducted at the same time as user certification. The user's context information is collected by the context aware manager, and the context information follows the constraint rule of the context aware policy described in Section 3. After that, role tagging is conducted by the policy manager, and the rights for Role A are decided. The mapping of policy DB about Role A is conducted by tagging Role A. Through this process, the relevant defined services and information regarding each role can be accessed in the policy DB.
This results in an increase of the security of services for remote access or control services by the user in the smart grid. In addition, the user with a manager role in a home or enterprise network can provide proper services in a dynamic way by setting the various roles for service access or providing information about a variety of contexts.
When the user requests remote services, the entered metadata value and the user's context data are scanned for services access. The user can access to the data entities in various roles such as a general manager or system control manager in a home network or as a service provider in the smart grid environment. General-share services can be provided through a direct policy repository. When the home network user remotely accesses the smart grid environment by a basic Role ID, the rights policy limits the access to dynamic services according to the access context information.
5. Conclusions
This paper proposes a novel dynamic access control model which provides security-enhanced data access services in the smart grid environment. The proposed model identifies each user's role and current context. The user's context can be mapped to a certain predefined context type of the proposed model, and that context type is associated with an access policy which can control the user's access privilege. The context-aware manager can manage this mapping process, collecting information about the user role, context, and requested service, and mapping the proper context type and access policy to the user. And the policy manager controls the role-tagging process for the user and applies the exact roles to the user finally. Consequently, the proposed access control model can control dynamically the user's data access permissions.
The proposed model applies different access security policies depending on context information even for the same user by judging whether to provide authority management and services dynamically according to the user's context information. This provides security enhancements for overall smart grid services and resource access. Unlike the existing power grids, in the smart grid, various access objects such as users, devices, and systems can access systems along with two-way communication, and, accordingly, issues of access control and relevant security become important.
Recently, various security models have been studied with respect to access control using context awareness, but the various services provided in a smart grid and access control in such an environment still have serious vulnerabilities. In consideration of the lack of studies on smart grid access control, it is expected that the model proposed in this study will be used to solve important access control issues when establishing the smart grid in the future.
Footnotes
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgment
This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Science, ICT and Future Planning (no. 2014R1A1A1A05008391).
