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 role-based 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. We also provide quantitative and qualitative metrics for the
efficacy and efficiency of the framework. 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.