4.7 新版生态云认证授权模型
优质
小牛编辑
132浏览
2023-12-01
权限模型介绍Talos中认证/授权相关的概念和配置规则
认证模型
Talos认证规则基于生态云用户管理模块,用户登录小米生态云,点击用户管理可见:
简单介绍一下图中概念:
- User
对应web页面中“用户”标签,是用户的小米账号,用于登陆生态云web页面; - Team
对应web页面中“用户组”标签,是User的集合,隶属于Org;Team是资源(Topic)的创建体/授权体/访问体,topic可对Team授权,具体权限类型参见下文“权限类型”章节;用户使用Team的密钥创建或读写Topic,密钥在“用户组”标签下“用户密钥”一栏; - org
可在web页面中“用户组”标签下找到用户组所属Org的“ORG ID”,org是资源的拥有体,所有的Topic都是从属于某个Org的;故:创建Topic需要指定在哪个Org命下创建;资源计费的基本单位也是Org;
权限类型
PUT_MESSAGE = 1 // Message Write
GET_MESSAGE = 2 // Message Read
FULL_MESSAGE_CONTROL = 3 // Message R+W
DESCRIBE_TOPIC = 4 // Topic Read
PUT_MESSAGE_AND_DESCRIBE_TOPIC = 5 // Message Write & Topic Read
GET_MESSAGE_AND_DESCRIBE_TOPIC = 6 // Message Read & Topic Read
TOPIC_READ_AND_MESSAGE_FULL_CONTROL = 7 // Topic Read & Message R+W
CHANGE_TOPIC = 8 // Topic Write
FULL_TOPIC_CONTROL = 12 // Topic R+W
FULL_CONTROL = 15 // Topic & Message R+W
CHANGE_PERMISSION = 16 // Permission Admin
ADMIN = 31 // All Admin
使用示例
场景1.使用SDK创建Topic并读写数据
此流程可对照认证模型介绍图操作:
1.用户使用小米账号登陆,点击用户组标签查看所属用户组
2.如果没有用户组,需要联系所在org的admin在用户组中添加用户;目前不支持同一个用户加入多个用户组
3.在用户组页面找到“用户密钥栏”,使用SDK时利用AK:SK构建Credential访问Talos,创建Topic并读写数据
场景2.使用UI创建Topic并使用SDK读写数据
1.进入“流式消息队列”页面,点击“创建Topic”进入如下页面,Topic名称一栏对应“所属org/Topic名字”,点击确定
2.授权操作:如果需要为其他team授权,点击“流式消息队列”页面Topic的管理按钮,填写CI开头的Team ID,为其他Team授权,建议选择“TOPIC_READ_AND_MESSAGE_FULL_CONTROL”权限
3.在用户组页面找到“用户密钥栏”,使用SDK时利用AK:SK构建Credential访问Talos并读写数据
数据迁移
之前使用开发者账号创建的Topic在新版生态云UI是看不到的,可以按照以下方法迁移到新版生态云平台:进入“流式消息队列”页面,点击“切换旧版”,选择要迁移的Topic,点击“迁移”按钮,指定要迁移的org和授权admin的TeamID,点击确认迁移
迁移操作后,用户可以在生态云的UI中“流式消息队列”里看到自己原来的Topic,并可以使用Team的AK:SK通过SDK读写Topic 'devTopic'
注意:迁移生效时间默认是3分钟;迁移操作可以且仅可以执行一次,如果显示迁移成功后,重复操作会显示异常