跳到主要内容

tcb role create

v3.0.0+

tcb role 命令自 v3.0.0 起提供。

创建自定义角色。

语法​

tcb role create --name <name> --identity <identity> [options]

参数​

参数说明约束
--name <name>角色名称(必填)2–32 字符,中文/字母开头
--identity <identity>角色标识(必填,唯一)字母/数字/_-:@.
--description <desc>角色描述最多 255 字符
--users <uids>初始成员 UID,逗号分隔最多 100 个
--policies <json>策略 JSON 数组(见下方格式)最多 50 条
-e, --env-id <envId>环境 ID—

--policies 格式​

策略数组支持预设策略字符串和自定义策略对象混合使用:

[
"FunctionsAccess",
{
"code": "custom_api",
"name": "API 路径策略",
"description": "仅允许访问 /api 路径",
"effect": "allow",
"expression": {
"version": "1.0",
"statement": [
{
"action": "functions:/api/*",
"resource": "*",
"effect": "allow"
}
]
}
}
]

自定义策略对象字段:

字段说明必填
code策略唯一标识✅
effectallow 或 deny✅
name策略名称否
description描述否
expression策略表达式(含 version + statement 数组)否

statement 子语句字段:

字段说明示例
action<功能类型>:<路径>,* 表示全部functions:* / functions:/api/*
resource资源范围,* 表示全部*
effectallow 或 denyallow

功能类型枚举:storages / functions / cloudrun / model

示例​

# 最简创建
tcb role create --name 开发者 --identity developer -e my-env-id

# 创建并分配初始成员
tcb role create --name 开发者 --identity developer --users "1003,1005" -e my-env-id

# 使用预设策略
tcb role create --name 网关角色 --identity gateway_role \
--policies '["FunctionsAccess","StoragesDeny"]' \
-e my-env-id

# 混合使用预设 + 自定义策略
tcb role create \
--name 全栈开发者 \
--identity fullstack_dev \
--policies '[
"FunctionsAccess",
{
"code": "custom_api",
"name": "API路径策略",
"effect": "allow",
"expression": {
"version": "1.0",
"statement": [{"action": "functions:/api/*", "resource": "*", "effect": "allow"}]
}
}
]' \
--users "1003,1005,1007" \
-e my-env-id