Comment on page
Authorization Management of Parameters
Different kinds of admin role control parameters such as smart contract upgrades, fee structures, and governance mechanisms, influencing the decentralized finance ecosystem's overall governance and operational aspects.
Access Control List Manager is the main registry of system roles and permissions.
ACLManager allows a Role Admin to manage roles. Role Admin is itself a role that is managed by the
DEFAULT_ADMIN_ROLE
.DEFAULT_ADMIN_ROLE
is held by the ACLAdmin, which is initialised in PoolAddressesProvider
.PoolAddressesProvider
, is owned by HopeLend Governance.
Below we outline the powers/responsibilities of the roles and the specific methods that are only accessible to the holders of these roles.
Role | Responsibilities / Powers | Methods Accessible |
FLASH_BORROWER | Flash loan premium is waived for the holders of this role. ⛔️ Does not include flashLoanSimple | flashLoan |
ASSET_LISTING_ADMIN | Can update
|
|
RISK_ADMIN | Can update
|
|
ACL_ADMIN | Manage the role admins in the ACLManager |
|
EMERGENCY_ADMIN | Can pause/unpause the pool or individual reserve |
|
POOL_ADMIN | Can
|
|
| | |
function isPoolAdmin(address admin)
Returns
true
if the address has POOL_ADMIN
role.function isEmergencyAdmin(address admin)
Returns
true
if the address has EMERGENCY_ADMIN
role.function isRiskAdmin(address admin)
Returns
true
if the address has RISK_ADMIN
role.function isFlashBorrower(address borrower)
Returns
true
if the address has a FLASH_BORROWER
role.function isAssetListingAdmin(address admin)
Returns
true
if the address has ASSET_LISTING_ADMIN
role.setRoleAdmin(bytes32 role, bytes32 adminRole)
Setup admin to manage Roles.
This method can only be called by address with
DEFAULT_ADMIN_ROLE
.Call Params
Name | Type | Description |
role | bytes32 | keccak256 hash of one of the following:
|
adminRole | bytes32 | adminRole responsible for role. 0x00 is reserved for DEFAULT_ADMIN_ROLE |
addPoolAdmin(address admin)
Add address to the list of members in
POOL_ADMIN
role. Holders of this role can update token implementations, drop, (un)pause and (de)activate reserves, update premiums and do everything the ASSET_LISTING_ADMIN
and RISK_ADMIN
can do. Can be called only by Role Admin, specified by HopeLend Governance, responsible for managing
POOL_ADMIN
role.
Call Params
Name | Type | Description |
admin | address | address which will be granted POOL_ADMIN role. |
removePoolAdmin(address admin)
Remove given address from the list of members in
POOL_ADMIN
role.Can be called only by Role Admin, specified by HopeLend Governance, responsible for managing
POOL_ADMIN
role.Call Params
Name | Type | Description |
admin | address | address for which POOL_ADMIN role permissions must be revoked. |
addEmergencyAdmin(address admin)
Add address to the list of members in
EMERGENCY_ADMIN
role. Holders of this role can pause and unpause the pool or an individual reserve.Can be called only by Role Admin, specified by HopeLend Governance, responsible for managing
EMERGENCY_ADMIN
role.Call Params
Name | Type | Description |
admin | address | address which will be granted EMERGENCY_ADMIN role. |
function removeEmergencyAdmin(address admin)
Remove given address from the list of members in
EMERGENCY_ADMIN
role.Can be called only by Role Admin, specified by HopeLend Governance, responsible for managing
EMERGENCY_ADMIN
role.Call Params
Name | Type | Description |
admin | address | address for which EMERGENCY_ADMIN role permissions must be revoked. |
function addRiskAdmin(address admin)
Add address to the list of members in
RISK_ADMIN
role. Holders of this role can update the grace period of Oracle Sentinels, reserve params, unbacked mint cap, liquidation fee and eMode categories.Call Params
Name | Type | Description |
admin | address | address which will be granted RISK_ADMIN role. |
Remove given address from the list of members in
RISK_ADMIN
role.Call Params
Name | Type | Description |
admin | address | address for which RISK_ADMIN role permissions must be revoked. |
function addFlashBorrower(address borrower)
Add address to the list of members in
FLASH_BORROWER
role. Holders of this role do not pay premium for flash loan (Does not apply to flashLonaSimple
.function removeFlashBorrower(address borrower)
Remove given address from the list of members in
FLASH_BORROWER
role.Call Params
Name | Type | Description |
admin | address | address for which FLASH_BORROWER role permissions must be revoked. |
function addAssetListingAdmin(address admin)
Add address to the list of member in
ASSET_LISTING_ADMIN
role. Holder of this role can update oracles & add new asset to the HopeLend market.Call Params
Name | Type | Description |
admin | address | address which will be granted ASSET_LISTING_ADMIN role. |
function removeAssetListingAdmin(address admin)
Remove address from the list of members in
ASSET_LISTING_ADMIN
role.Call Params
Name | Type | Description |
admin | address | address for which ASSET_LISTING_ADMIN role permissions must be revoked. |
Last modified 4mo ago