=Paper=
{{Paper
|id=Vol-1787/507-511-paper-88
|storemode=property
|title=Development of new security infrastructure design principles for distributed computing systems based on open protocols
|pdfUrl=https://ceur-ws.org/Vol-1787/507-511-paper-88.pdf
|volume=Vol-1787
|authors=Yulia Dubenskaya,Alexander Kryukov,Andrey Demichev
}}
==Development of new security infrastructure design principles for distributed computing systems based on open protocols
==
Development of new security infrastructure design principles for distributed computing systems based on open protocols Yu. Yu. Dubenskayaa, A. P. Kryukov, A. P. Demichev Skobeltsyn Institute of Nuclear Physics, M.V.Lomonosov Moscow State University (SINP MSU), 1(2), Leninskie gory, GSP-1, Moscow, 119991, Russia E-mail: a dubenskaya@theory.sinp.msu.ru The report presents our current work on design and development of security infrastructure of modern kind that is intended for different types of distributed computing systems (DCS). The main goal of the proposed ap- proach is to provide users and administrators with transparent, intuitive and yet secure interface to the computa- tional resources. The key points of the proposed approach to security infrastructure development are listed as follows: All the connections in the DCS must be secured with SSL/TLS protocol. Initial user authentication is performed using a pair of login and password with the use of multi-factor au- thentication where necessary. After successful login a user obtains a special session key with a limited validity period for further password-free work. Every single computational request is protected by the individual hash which is not limited in time. These hashes are registered by the special authentication and authorization service, and states of the hashes are tracked on real time. The service also provides online requests authorization for delegation of user rights to the other services in the DCS. A prototype of the proposed security infrastructure was deployed on a testbed. It includes an au- thentication and authorization service, an execution service, a storage management service, and a user interface. Various tests have shown that the proposed algorithm and architecture are competitive in terms of functionality, usability, and performance. The results can be used in the grid systems, cloud structures, large data processing systems (Big Data), as well as for the organization of remote access via the Internet to supercomputers and computer clusters. Keywords: security infrastructure, distributed computing systems, authorization, authorization The work was supported by the Ministry of Education and Science of the Russian Federation, agreement No.14.604.21.0146 (RFMEFI60414X0146). © 2016 Yulia Yu. Dubenskaya, Alexander P. Kryukov, Andrey. P. Demichev 507 Introduction Distributed computing systems (DCS) are widely used by the engineers and scientists to solve different computational problems in various fields of natural sciences. One of the most remarkable examples of DCS is the Worldwide LHC Computing GRID (WLCG) [Sciaba, Andreeva, …, 2010], which is used for reduction and processing of huge amount of experimental data derived from the Large Hadron Collider (LHC). One of the most significant issues that faces developers and administrators of a DCS is to provide an appropriate security level during data processing and calculations. On the one hand, DCS users need to be sure that the results of data processing and calculations are protected from unauthorized access and would not be passed to the illegal intruder. On the other hand, owners of the computational resources that form the DCS want to have guarantees that only the authorized users will be able to submit computational requests to the system and to obtain the results. Consequently, the security infrastructure of a DCS is to provide strong authentication and author- ization of the users and services of the DCS, and also is to guarantee privacy, integrity and availability of processed and transmitted data. Moreover, integrity of the DCS itself should be assured as well as real-time availability of both user and auxiliary services. Currently in most DCSs (including WLCG) security is based on the public key infrastructure (PKI) [Buchmann, Karatsiolis, Wiesmaier, 2013]. Additionally, in most of the GRID systems the proxy certificates [Tuecke, Welch, …, 2004] are used. Proxy certificate is a special short time living certificate used for the purpose of providing restricted rights delegation within a PKI based authentica- tion system. The short lifetime of the proxy certificates is due to security reasons. If the request pro- cessing takes too long and the corresponding proxy certificate expires, an end user has to interact with special services that support prolongation of proxy lifetime [Kouril, Basney, 2005]. Analysis of experience of existing DCS operation reveals that PKI-based security infrastructure along with proxy certificates provides very high security level, but is difficult to understand and to interact with for the end users of the system. Furthermore, a contradiction between the limited lifetime of the proxy certificates and the unpredictable time of the request processing makes the security infra- structure overcomplicated, and is a big issue for the end users of the system. Thereby, along with the incontestable benefits of strong security the mentioned approach has serious usability issues. In prac- tice, the researcher that acts as a DCS user can face serious problems trying to legally gain remote ac- cess to computing resources. The fact is that requesting and management of the X.509 certificates and proxies requires deep understanding of the basic concepts of the PKI that not all the users have. The need to use proxy lifetime prolongation services does more harm than good in that it makes the com- putation request submitting and processing still more complicated. In this paper we propose an alternative approach to development of the security infrastructure for a DCS with no use of the proxy certificates with short lifetime. The main goal of the work is to im- prove usability and facilitate access to the DCS for the end users, provided that security level of the DCS still remains high. In the next section the proposed approach is presented in more detail, including suggested archi- tecture for the security infrastructure (that is considered as a part of the overall DCS architecture) and itemized step-by-step authentication and authorization algorithms. In Discussion we consider possible shortcomings of the proposed security infrastructure and some solutions recommended to avoid them. In Conclusion the advantages of the proposed approach are analyzed in brief. Proposed approach to security infrastructure development Providing of the intuitive, user-friendly, and yet secure interface can attract to a DCS a lot of new end users who are non-specialists in the field of computer science and information security, and who 508 want to get access and perform calculations in the DCS. The proposed approach to development of the security infrastructure primarily addresses a challenge of the DCS usability improving. One of the main principles of the proposed approach is intentional complication of the security infrastructure by adding a special auxiliary service, that would be a trusted third party for all the DCS actors (users and services). This new auxiliary service is destined for authentication and authorization of the DCS actors, hereinafter to be referred to as AA-service. Within the framework of the proposed approach all the interaction requests between the DCS actors must be verified and approved by the AA-service. This solution allows to hide difficult cryptographic operations from the end users, ensur- ing that interface to DCS becomes more intuitive and usable. Another important principle of the proposed approach is in replacement of proxy certificates with special hashes that are used to ensure that the request was not changed (further we will call them re- quest hashes). To confirm the legality of the request in the DCS the AA-service uses specially gener- ated unique hashes with unlimited lifetime. After receiving a computational request every execution service (that is installed on the computational resource) checks the request hash via the AA-service, and executes the request only if the AA-service responds that the hash is valid and has not been used yet. Thus the use of request hashes, on the one hand, makes it possible to solve the problem of request integrity protection during processing in the DCS, and on the other hand, eliminates the problem of the short lifetime of the regular proxy certificates. Online registration of the request hashes in the database of the AA-service provides strong authentication and authorization during requests processing in the DCS. To increase usability the third principle is used that is intended to simplify the user experience, and is in use of the login/password pair for user authentication, while service-to-service interaction should pass only using proven solutions based on asymmetric cryptography and PKI. Thus, the AA- service is a key element of the proposed security infrastructure of the DCS, as all the system actors interact with it. The authorization is also performed by the AA-service with the use of request hash verification and online access rights check. The main points of the proposed authentication and authorization algorithm are listed as follows: All the connections in the DCS must be secured with SSL/TLS protocol. On the first request a user have to enter a valid pair of login and password. For strong se- curity the multi-factor authentication can be implemented (e.g. one-time-valid dynamic pass-code sent via SMS, e-mail, and so on.). After successful login a user obtains a special session key (lifetime of the key is called session and is defined by the DCS administrator) for further work with no need to enter login/password pair over and over again during the session (when the session expires a user will have to enter login/password pair anew). Each next user request is implicitly supplied by the previously obtained session key that is used for password-free access to the AA-service. Each request should be protected by the individual hash which is not limited in time. This request hash is generated for every single computational request with respect to request generation time. Due to this approach the hashes of the two completely identical succes- sively generated requests will be different. The request hash is generated by the AA- service at the moment when a user finalizes the request. All the request hashes are regis- tered by the AA-service in the special database, and states of these hashes are tracked on real time. That is a consideration, as request hashes are one-time-valid, so a user will not be able to submit the same request twice using the same request hash. At the moment when a user submits its request to the execution service appropriate re- quest hash is implicitly sent also. Having received a computational request every execution service checks against the AA- service if the request hash is valid, correct and has not been used yet, and if the user is authorized to pass the request, and if the AA-service returns OK the service executes the 509 request. This approach ensures impossibility of request changing during its passing and processing. Rights delegation between computational services is also implemented via request hash in the following manner: The first service (S1) generates a new sub-request (R1) from the initial user request (R0). AA-service generates a request hash (H1) for the new sub-request R1, and registers H1 in its database. The first service S1 passes the sub-request R1 to the second service (S2) for processing. The second service S2 examines the received sub-request hash H1 via AA-service. If AA-service responds OK the second service S2 will continue sub-request processing otherwise the sub-request will be rejected. Thanks to this approach an end user has even no need to know what a X.509 certificate and/or proxy certificate is, much less there is no need to install special cryptographic libraries on the user's local computer. All the cryptographic entities, such as session keys and request hashes are generated implicitly and are hidden from the user as well as details of the service-to-service interactions. Thus, thanks to intentional complication of the security infrastructure by adding the AA-service both high level of security along with seamless and easy access to the computational resources of the DCS for the end users are achieved. Thereby end users can concentrate on their computational needs. The proposed approach is universally applicable and architecture-independent. It can be used in the GRID systems, cloud structures, large data processing systems (Big Data), as well as for the re- mote access via the Internet to supercomputers and computer clusters. A prototype of the proposed security infrastructure was deployed on a testbed. It includes an AA- service, an execution service, a storage management service, and a user interface. Various tests have shown that the proposed algorithm and architecture are competitive in terms of functionality, usability, and performance. Discussion One of the possible shortcomings of the proposed architecture of the security infrastructure is the requirement to have on-line access to the AA-service for all end users and auxiliary services of the DCS. The simulation using our prototype shows that such an infrastructure is quite stable and works fine at least for the systems with twenty user requests per second. For the critical high-availability sys- tems it is possible to introduce two parallel AA-services with on-line master to slave database replica- tion. For example, to address the issue a replication system for PostgreSQL database management sys- tem – Slony-I [Marcotte, 2005] can be used. At this case one of the AA-services acts as a master ser- vice that processes requests and another acts as a slave (an inactive full copy of the master). Only the master service is allowed to modify the data. If the master service crashes it would be easy for the ad- ministrator of the DCS to switch to the slave service immediately with almost no loss of information. An important benefit of the proposed architecture of the security infrastructure is that all the in- formation concerning each request in the DCS is collected in the database of the AA-service. This in- formation can be used for monitoring purposes as well as for request revocation at any stage of pro- cessing. Conclusion The proposed approach allows to enhance user's operational performance and greatly increases the competitive advantage for scientific and industrial research organizations that use DCSs. Scientific and technical teams, individual researchers and technology developers, as well as educators, graduate assistants and students have the great opportunity to accelerate their practical results through the use of a simplified remote access to DCS computational resources for data processing and calcu lations in various fields of natural sciences and technology. 510 References Buchmann J. A., Karatsiolis E., Wiesmaier A. Introduction to Public Key Infrastructures. // Springer- Verlag Berlin Heidelberg, 2003. Kouril D., Basney J. A credential renewal service for long-running jobs. // Proceedings of the 6th IEEE/ACM International Workshop on Grid Computing. — 2005. — Vol. 2005. — P. 63–68. Marcotte L. Database replication with Slony-I // Linux Journal. — 2005. — No.134. [Electronic resource]. URL: http://www.linuxjournal.com/article/7834 (accessed 18.11.2016). Sciaba A., Andreeva J., Campana S., Donno F., Litmaath M., Magini N., Moscicki J. T., Renshall H. Computing at the Petabyte scale with the WLCG. Worldwide LHC Computing Grid Tech. Rep. CERN-IT-Note-2010-006. [Electronic resource]. URL: http://cds.cern.ch/record/1302999/files/SCALE2010-WLCG-V2.pdf (accessed 18.11.2016). Tuecke S., Welch V., Engert D., Pearlman L., Thompson M. Internet X.509 Public Key Infrastructure Proxy Certificate Profile. Tech. Rep. RFC 3820. [Electronic resource]. URL: https://www.ietf.org/rfc/rfc3820.txt (accessed 18.11.2016). 511