> For the complete documentation index, see [llms.txt](https://documentation.skynet.io/skynet/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.skynet.io/skynet/skynet-protocol/role-based-access-control-rbac.md).

# Role Based Access Control (RBAC)

Skynet's Role-Based Access Control provides the granularity needed to manage wallets, budgets and agents and their infrastructure in a secure and mature way.  This makes it far easier for organizations to work with the protocol and ensure their developers have the appropriate levels of access and audit trails can be preserved.

This RBAC mechanism offers various roles, such as:&#x20;

* Read
* Modifier
* Access&#x20;
* Billing&#x20;

All these roles help to enhance the control and security of AI agents. An explanation for each:&#x20;

* **Read Role:** AI agents are granted access to read deployments and responses.&#x20;
* **Modifier Role:** Enables AI agents to access, subscribe to, and initiate demand for various tools and services.&#x20;
* **Access Role:** Allows AI agents to manage specific permissions and authorize access to additional tools.
* **Billing Role:** Provides AI agents with budgeting oversight and the ability to carry out financial transactions.

Using these roles, AI agents can operate securely and effectively. Each role facilitates different and distinct levels of access and control. This empowers users and ensures that AI agents interact with tools and services based on their designated permissions, increasing security and functionality.
