Roles and Permissions
Four key roles govern permissions within the contract.
Admin Role (DEFAULT_ADMIN_ROLE)
Purpose: The Admin role has full authority over the contract’s access control, responsible for assigning and revoking other roles.
Permissions: Holds the ability to grant and revoke any role, including itself, providing complete oversight of the permissions framework.
Special Note: The Admin role inherently holds all permissions and does not require specific action-based access. It should be managed with caution due to its comprehensive rights.
Depositor Role (DEPOSITOR_ROLE)
Purpose: Manages deposits and fund withdrawals within the vault, as well as setting the recipient address for rewards.
Permissions: Limited to depositing Ether, withdrawing funds, and managing the rewards recipient - wallets with the Depositor Role are used for the day-to-day staking operations.
Operator Role (OPERATOR_ROLE)
Purpose: Manages validators, including proposing exits and queuing validators for activation.
Permissions: Can propose validator exits and queue validator deposits, giving the Operator control only over validator operations.
Northstake retains the Operator Role.
Oracle Role (ORACLE_ROLE)
Purpose: enables the synchronization between the Beacon Chain and Ethereum Mainnet, ensuring that full validator withdrawals are allocated to the correct beneficiary in the dedicated contract.
Permissions: Grants the ability to update withdrawal information.
Northstake retains the Oracle Role.
Updated about 1 month ago