Dynamic Role-Based Access Control for Decentralized Applications
2020, Blockchain – ICBC 2020
https://doi.org/10.1007/978-3-030-59638-5_13Abstract
Access control management is an integral part of maintaining the security of an application. Although there has been significant work in the field of cloud access control mechanisms, however, with the advent of Distributed Ledger Technology (DLT), on-chain access control management frameworks hardly exist. Existing access control management mechanisms are tightly coupled with the business logic, resulting in governance issues, non-coherent with existing Identity Management Solutions, low security, and compromised usability. We propose a novel framework to implement dynamic rolebased access control for decentralized applications (dApps). The framework allows for managing access control on a dApp, which is completely decoupled from the business application and integrates seamlessly with any dApps. The smart contract architecture allows for the independent management of business logic and execution of access control policies. It also facilitates secure, low cost, and a high degree of flexibility of access control management. The proposed framework promotes decentralized governance of access control policies and efficient smart contract upgrades. This paper also provides performance comparison with adjacent access control frameworks for DLT. Any Turing complete smart contract programming language is an excellent fit to implement the framework. We expect this framework to benefit enterprise and non-enterprise dApps and provide greater access control flexibility and effective integration with traditional and state of the art identity management solutions.
References (23)
- A. Chatterjee, M. S. Parmar, and Y. Pitroda, "Production challenges of distributed ledger technology (DLT) based enterprise applications," in 2019 International Symposium on Systems Engineering (ISSE) (IEEE ISSE 2019), Edinburgh, United Kingdom (Great Britain), Sep. 2019.
- S. Haig, "Blockchain enters "trough of disillusionment" according to gartner." [Online]. Available: https://news.bitcoin.com/ blockchain-enters-trough-disillusionment-gartner
- D. Ferraiolo, D. R. Kuhn, and R. Chandramouli, Role based access control. Artech House, 2007.
- E. Androulaki, A. Barger, V. Bortnikov, C. Cachin, K. Christidis, A. D. Caro, D. Enyeart, C. Ferris, G. Laventman, Y. Manevich, S. Muralidharan, C. Murthy, B. Nguyen, M. Sethi, G. Singh, K. Smith, A. Sorniotti, C. Stathakopoulou, M. Vukolic, S. W. Cocco, and J. Yellick, "Hyperledger fabric: A distributed operating system for permissioned blockchains," CoRR, vol. abs/1801.10228, 2018. [Online]. Available: http://arxiv.org/abs/1801.10228
- G. Wood et al., "Ethereum: A secure decentralised generalised trans- action ledger," Ethereum project yellow paper, vol. 151, no. 2014, pp. 1-32, 2014.
- Online]. Available: https://docs.openzeppelin.com/contracts/2.x/ access-control
- J. P. Cruz, Y. Kaji, and N. Yanai, "Rbac-sc: Role-based access control using smart contract," IEEE Access, vol. 6, pp. 12 240-12 251, 2018.
- E. Yuan and J. Tong, "Attributed based access control (abac) for web services," in IEEE International Conference on Web Services (ICWS'05), July 2005, p. 569.
- C. Dannen, Introducing Ethereum and Solidity. Springer, 2017.
- U. W. Chohan, "The decentralized autonomous organization and gover- nance issues," Available at SSRN 3082055, 2017.
- G. Destefanis, M. Marchesi, M. Ortu, R. Tonelli, A. Bracciali, and R. Hierons, "Smart contracts vulnerabilities: a call for blockchain software engineering?" in 2018 International Workshop on Blockchain Oriented Software Engineering (IWBOSE). IEEE, 2018, pp. 19-25.
- L. Luu, D.-H. Chu, H. Olickel, P. Saxena, and A. Hobor, "Making smart contracts smarter," in Proceedings of the 2016 ACM SIGSAC conference on computer and communications security. ACM, 2016, pp. 254-269.
- R. M. Parizi, A. Dehghantanha et al., "Smart contract programming languages on blockchains: An empirical evaluation of usability and security," in International Conference on Blockchain. Springer, 2018, pp. 75-91.
- A. Yasin and L. Liu, "An online identity and smart contract management system," in 2016 IEEE 40th Annual Computer Software and Applications Conference (COMPSAC), vol. 2. IEEE, 2016, pp. 192-198.
- L. Bauer, L. F. Cranor, R. W. Reeder, M. K. Reiter, and K. Vaniea, "Real life challenges in access-control management," in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, 2009, pp. 899-908.
- "Fundamentals of information systems security/access control systems," in Fundamentals of Information Systems Security/Access Control Sys- tems -Wikibooks, open books for an open world.
- C. Dannen, Introducing ethereum and solidity: foundations of cryptocur- rency and blockchain programming for beginners. Apress, 2017.
- N. Gaur, L. Desrosiers, V. Ramakrishna, N. Petr, S. A. Baset, and A. ODowd, Hands-on blockchain with Hyperledger: building decen- tralized applications with Hyperledger Fabric and composer. Packt Publishing, 2018.
- R. C. Martin, Agile software development: principles, patterns, and practices. Prentice Hall, 2002.
- I.-C. Lin and T.-C. Liao, "A survey of blockchain security issues and challenges." IJ Network Security, vol. 19, no. 5, pp. 653-659, 2017.
- Y. Luo, Q. Shen, and Z. Wu, "Pml: An interpreter-based access control policy language for web services," 2019.
- "Eternal storage." [Online]. Available: https://fravoll.github.io/ solidity-patterns/eternal storage.html
- K. Bhargavan, A. Delignat-Lavaud, C. Fournet, A. Gollamudi, G. Gonthier, N. Kobeissi, N. Kulatova, A. Rastogi, T. Sibut-Pinote, N. Swamy et al., "Formal verification of smart contracts: Short paper," in Proceedings of the 2016 ACM Workshop on Programming Languages and Analysis for Security. ACM, 2016, pp. 91-96.