Arcana’s Rule-Based Access Control Explained
Access control is a foundational element in just about every web2 and web3 application around us. Understanding access control is straightforward– it’s all about determining who gets to access a certain information or piece of data. Implementing it is where things get complicated. There are different types of access control, such as role-based access control, data-centric access control, and context-centric access control. In this blog, we dive deeper into rule-based access control, and how Arcana leverages it to provide a transparent and secure user expereince.
Understanding the Need for Rule-based Access Control
In the simplest of terms, rule-based access control manages the access to a certain piece of data, info, file, or database solely based on whether they comply with the predetermined set of rules. One of the most popular examples of rule-based access control implementation would be video games where players get eligible to receive certain points, tokens, or cross levels upon reaching a certain milestone. For events such as the ones just mentioned, a straight-forward criteria is established, and upon meeting it, access can be granted.
Rule-based access control is widely implemented across several web apps and solutions that most internet users interact with on a daily basis. That being said, there is still more to be desired in its implementation. Because since time immemorial, the authority to execute access control (whether it is rule-based or others), has been placed in the hands of a “trusted” third party. Consider AWS, for instance; it acts as the sole administrator and third-party for providing access control to the data stored on its cloud.
Arcana Access: A Secure & Transparent Alternative
Arcana Access leverages both rule-based and role-based access control. We rely on DIDs for identifying data on-chain, and determining who gets access to it. In the case of rule-based access control, we simply formulate conditions that are associated with each file stored on our network. A simple example would be a rule wherein only certain data can only be accessed if the user address and the owner address are the same. Now the list of all these “conditions” or “rules” are termed as “Access Control Lists” or ACLs. These ACLs essentially hold all the rules that secure access to data. Now the important question of how does Arcana store and manage these ACLs comes up. Here’s how we do it: The ACLs associated with each data file are stored in a database, with its rule hash stored on the blockchain.
It is worth noting that we enforce access control on all private data being stored on our storage network. We support the following operations through access control on private user data:
- Sharing files
- Revoking file sharing access
- Transfering file ownership
- Deleting a file
- Getting the list of all users who have shared access to a file
- & And a few other private meta data-specific operations.
Learn more about Access Control on our official documentation here: https://docs.beta.arcana.network/docs/accesscontrol
The rule-based access control in Arcana Access can be based on both on-chain & off-chain states. You could, for instance, deploy a rule that says “allow any address to access a certain file if they own an NFT-wrapped-token of a certain crypto” or “allow access only if the user has at least 5 ETH balance.” With Arcana, extending rules and conditions to off-chain states is also made simple.
Arcana Access allows developers to either their code or users decide who gets access to data. We, moreover, provide an end-to-end solution to both web3 and web2 devs looking for secure storage and transparent access control. All the data uploaded to Arcana’s decentralized storage network is encrypted, split up and stored across various nodes to avoid any single point of failure. When compared to current web3 storage services such as IPFS, Arcana’s encrypted storage and access control provide a more secure, transparent, and privacy-friendly user experience.
About Arcana Network
Arcana is Web3 infra for devs to launch and scale apps through its Auth, Store, and Access SDKs. Web3 apps use Arcana’s SDK to authenticate users with Social and Passwordless Auth and create non-custodial wallets, Store Encrypted/Unencrypted Data, and Manage Access. Built for Ethereum and EVM-based chains, with Arcana’s privacy stack, developers can build secure and privacy-preserving apps with a seamless user experience.
Arcana has raised 2.7Mn USD from some of the leading investors and founders in the ecosystem, such as Balaji Srinivasan, Founders of Polygon, Woodstock, Republic Crypto, and Digital Currency Group.
Watch out for Arcana’s upcoming Mainnet in December 2022. Want to know more about our Mainnet features? Book a demo.