https://eosfans.io/topics/372

关于2.0权限问题请移步https://eosfans.io/topics/28

目录

  • 查看权限
  • 改变权限
  • 增加权限
  • 删除权限

查看权限

有人说查看权限非常简单,不就是看看用户信息嘛!
其实不然,EOS用户的权限是与key相关联的,所以确定你有没有全县的其实是要看你有没有这些公匙对应的私匙:

  1. 查看自己帐户的详细信息:

cleos get account lome

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 1,"keys": [{"key": "EOS8FbfG31mJELxUS4Jj9Xv3tsNRzFMg2uP2h9b5hCkvHomsatVYw","weight": 1}],"accounts": []}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight": 1}],"accounts": []}}]
}

更改授权

更改权限的key

初始化的帐户是有两种权限的,这一步我们来给帐户加一个权限(群组)。
1.这里我就拿我在测试的公网上的一个帐户,
初始化的帐户是这样的:

  1. 下面讲解一下命令:

cleos set account permission ${account_name} ${permission} ${JSON} ${permission}

cleos set account permission lome  active '{"threshold": 1, "keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg", "weight": 1}], "accounts": []}' owner

更改以后的账号如下:

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 1,"keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight": 1}],"accounts": []}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight": 1}],"accounts": []}}]
}

参数说明:

threshold权限阀值,权限等于阀值才能获取该权限,否则授权失败
keys 是该权限已授权的密匙 : keys中的key为授权的密匙对的公匙,weight 为授权密匙对的权重 ps: 若阀值是2,权重是1,是不能够完成授权的,操作将失败.
accounts 是该权限已授权的帐户: permission是被授权用户的权限这里指的就是lome的active权限,weight指的也是权重。

ps:重要:授权用户权限其实跟授权key是一个道理,其实授权帐户权限,实质上就是授权该权限的密匙对权限。

最后owner是权限,只有owner权限才能改变用户的权限
值得一提的是:EOS3.0对权限及权重做了校验。如果我的命令是这样的:
cleos set account permission lome active '{"threshold":2,"keys":[{"key":"EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight":1}],"accounts":[]}' owner

该操作将会失败,因为这个权限根本就达不到伐值,2.0在这里是没有校验的,错误提示如下:

Error 3040000: message validation exception
Error Details:
Invalid authority: {"threshold":2,"keys":[{"key":"EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight":1}],"accounts":[]}

增加权限的授权账户

cleos set account permission lome active '{"threshold":2,"keys":[{"key":"EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight":1}],"accounts":[{"permission":{"actor":"eosio","permission":"active"},"weight":1}]}' owner

这里更改的是lome账户权限的accounts权限,下面看一下更改完成后我的账户:

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 2,"keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight": 1}],"accounts": [{"permission": {"actor": "eosio","permission": "active"},"weight": 1}]}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight": 1}],"accounts": []}}]
}

在这里我的权重伐值为2,key的权重为1,eosio@active的权重为1.那么要使用lome@active权限就需要key和eosio@active所对应的key的权限。

增加多个授权key

增加授权的命令如下:

cleos set account permission lome active '{"threshold":1,"keys":[{"key":"EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight":1},{"key":"EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight":1}],"accounts":[]}' owner

结果如下:

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 1,"keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight": 1},{"key": "EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight": 1}],"accounts": []}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5hepJxGjP3X93wVmXZeBSNavGWeJvwWtev5ak8oARqwrXjehXd","weight": 1}],"accounts": []}}]
}

增加权限多个授权账户

增加授权的命令如下:

cleos set account permission lome active '{"threshold":1,"keys":[],"accounts":[{"permission":{"actor":"test","permission":"active"},"weight":1},{"permission":{"actor":"eosio","permission":"active"},"weight":1}]}' owner

结果如下:

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 1,"keys": [],"accounts": [{"permission": {"actor": "test","permission": "active"},"weight": 1},{"permission": {"actor": "eosio","permission": "active"},"weight": 1}]}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5hepJxGjP3X93wVmXZeBSNavGWeJvwWtev5ak8oARqwrXjehXd","weight": 1}],"accounts": []}}]
}

增加多个授权key && 增加权限多个授权账户

增加授权的命令如下:

cleos set account permission lome active '{"threshold":1,"keys":[{"key":"EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight":1},{"key":"EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight":1}],"accounts":[{"permission":{"actor":"test","permission":"active"},"weight":1},{"permission":{"actor":"eosio","permission":"active"},"weight":1}]}' owner

结果如下:

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 1,"keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight": 1},{"key": "EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight": 1}],"accounts": [{"permission": {"actor": "test","permission": "active"},"weight": 1},{"permission": {"actor": "eosio","permission": "active"},"weight": 1}]}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5hepJxGjP3X93wVmXZeBSNavGWeJvwWtev5ak8oARqwrXjehXd","weight": 1}],"accounts": []}}]
}

增加权限

代码如下:

cleos set account permission lome test '{"threshold":1,"keys":[{"key":"EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight":1}],"accounts":[]}' active

结果如下:

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 1,"keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight": 1},{"key": "EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight": 1}],"accounts": [{"permission": {"actor": "test","permission": "active"},"weight": 1},{"permission": {"actor": "eosio","permission": "active"},"weight": 1}]}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5hepJxGjP3X93wVmXZeBSNavGWeJvwWtev5ak8oARqwrXjehXd","weight": 1}],"accounts": []}},{"perm_name": "test","parent": "active","required_auth": {"threshold": 1,"keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight": 1}],"accounts": []}}]
}

删除权限

终于来到了最后一节,恭喜你!
有人会说这个权限或者群组没用了怎么办?这节我就来教你,我们来删除它:
执行代码如下

cleos set account permission lome test 'NULL' active

命令就不再多赘述什么意思。这个命令中只有NULL前面没见过,这里是用来专门删除权限或者群组用的。执行结果如下:

{"account_name": "lome","permissions": [{"perm_name": "active","parent": "owner","required_auth": {"threshold": 1,"keys": [{"key": "EOS6ePVMSdSkGn4wDMqcCSTSN3GnRgEPxDPEioQQXUkfYxT8jrudg","weight": 1},{"key": "EOS5wMFMPiD6qbKSZQpJFdEpzvY2yC2o6XLsg97gPPrYHbW4KovjV","weight": 1}],"accounts": [{"permission": {"actor": "test","permission": "active"},"weight": 1},{"permission": {"actor": "eosio","permission": "active"},"weight": 1}]}},{"perm_name": "owner","parent": "","required_auth": {"threshold": 1,"keys": [{"key": "EOS5hepJxGjP3X93wVmXZeBSNavGWeJvwWtev5ak8oARqwrXjehXd","weight": 1}],"accounts": []}}]
}

EOS 帐户权限操作--你找不到的干货 (原创) 续集-EOS 3.0相关推荐

  1. 使用tcpdump抓取EOS帐户创建与交易数据

    基本环境配置 EOS 版本: 1.0.1(2018-06-04更新)   节点nodeos http监听端口:127.0.0.1:8888 本地钱包keosd http监听端口:127.0.0.1:8 ...

  2. mysql帐户权限replace_mysql 用户管理和权限设置

    grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grant select on testdb.* to common_user@'%' grant insert on t ...

  3. Linux运维人员共用root帐户权限审计

    在中小型企业,公司不同运维人员基本都是以root 账户进行服务器的登陆管理,缺少了账户权限审计制度.不出问题还好,出了问题,就很难找出源头. 这里介绍下,如何利用编译bash 使不同的客户端在使用ro ...

  4. 如何修改服务器凭据,如何更改操作数据库帐户的用户凭据

    适用于: System Center 2012 SP1 - Service Manager,System Center 2012 R2 Service Manager,System Center 20 ...

  5. 以user_1用户身份登录mysql_创建MySQL用户帐户和授予权限

    创建MySQL用户帐户和授予权限 创建一个新的MySQL用户帐户 向MySQL用户帐户授予特权 显示MySQL用户帐户权限 从MySQL用户帐户撤消权限 删除现有的MySQL用户帐户 测试对数据库的访 ...

  6. 解决极值中的神奇设k法_神奇宝贝Go拥有对您的Google帐户的完全访问权限。 这是解决方法[更新]...

    解决极值中的神奇设k法 To say Pokémon GO is wildly popular would be a vast understatement. To say the app's use ...

  7. sudo修改文件夹名字_修改mac os帐户的短名称和个人文件夹

    根据"系统偏好设置"的"用户"面板中的定义,Mac OS X 中的每个用户都拥有一个全"名称"和一个"短名称".短名称最 ...

  8. 如何使用 PowerShell 锁定、解锁、启用和禁用 AD 帐户

    Active Directory GUI 管理工具,如Active Directory 用户和计算机 (ADUC),非常适合对单个帐户执行操作.但是当您需要处理多个AD帐户时,PowerShell是一 ...

  9. 将最小特权原则应用到 Windows XP 上的用户帐户

    将最小特权原则应用到 Windows XP 上的用户帐户 发布日期: 2006年07月03日 若要查看有关本指南的评论或讨论,请访问 [url]http://blogs.technet.com/sec ...

最新文章

  1. 关于线程池你不得不知道的一些设置
  2. 2020-1024=996
  3. tomcat启动时提示Failed to initialize end point associated with ProtocolHandler [http-apr-8080]
  4. 开发者应如何看待iOS平台和Android平台
  5. struct的初始化
  6. const char* p 、char* const p、const (char*) p 理解记忆
  7. 数学到底有多重要?网友:道理都懂,实力不允许啊
  8. Java笔记-非对称加密RSA的使用
  9. 2017-3-31/socket
  10. CAD批量提取数值lisp插件_CAD批量获取文本坐标及内容
  11. 权重的计算方法,主要有两种:1.线性加权法; 2.层次分析法
  12. mysql 建库建表模板 权限管理
  13. 让计算机u盘启动,U盘启动设置|电脑如何设置U盘启动?
  14. SparkMllib模型选择与优化-网格搜索和交叉验证
  15. 微信小程序自定义loading
  16. WordPress采集插件推荐都是免费采集插件
  17. row format delimited fields terminated by “,“含义是以‘,‘结尾的行格式分隔字段
  18. 数据结构串之寻找整数
  19. KDD 2022时空数据挖掘领域论文汇总
  20. LATEX中公式中插入图片,文字段落中插入图片

热门文章

  1. [Java 并发编程实战] 设计线程安全的类的三个方式(含代码)
  2. Winform 自定义窗体皮肤组件
  3. JSON解析---初识
  4. 挑战JavaScript正则表达式每日两题(1)
  5. 80 after generation to marry or not to marry that is a question
  6. mysql语法与decode语法的不同
  7. java五种加密技术理解
  8. Apache Commons Configuration使用入门
  9. Spring Security 基本介绍,初窥路径
  10. linux如何开启sni服务,Nginx开启单IP多SSL证书支持-TLS SNI support