😜角色及角色库
Last updated
Last updated
角色库是在智能合约层面进行写操作访问控制的最基础构件,它是访问控制智能合约的核心成员。
角色库最主要的用途是控制投资协议和股东协议起草和定稿过程的写操作访问控制。具体而言,股东可作为合约的所有者创建新合约,然后任命特定地址的账户为合约律师,由专业律师起草相关协议的正文条款并设置签字页配置,待合约内容起草完成并通过股东审核后,再由股东以合约所有者身份一次性撤销对所有合约律师的任命并将合约所有者身份转让给“0地址”,进而完成合约内容的“定稿”。
角色库主要定义了所有者和角色对象,以及采用“角色名称->角色对象”结构的角色对象映射表。
admin
角色管理员的账户地址。
isMember
判断特定地址账户是否为角色成员。
owner
所有者账户地址。
state
角色库的状态。0-设置中,1-已初始化,2-已定稿。
roles
角色映射表。映射表结构:“角色名称(bytes32)-> 角色对象”
查询接口最能体现角色库在整个系统中的功能和用途,具体请见下表。
getOwner
查询获取所有者的账户地址。
getRoleAdmin
查询特定名称角色的管理员账户地址。
hasRole
查询特定地址的账户是否为特定角色的成员。