tcb policy set
设置用户 Rego 鉴权策略。保存后旧网关鉴权将直接失效。
语法
tcb policy set [regoContent]
参数
| 参数 | 说明 |
|---|---|
<regoContent> | Rego 策略内容(必填) |
-e, --env-id <envId> | 环境 ID |
--json | 输出 JSON |
重要提示
设置 Rego 策略后,旧网关鉴权将直接失效,请确认策略内容正确后再执行。
Rego 策略格式
策略需要以 package authz.user 开头,使用 OPA Rego 语法:
package authz.user
default allow := false
# 示例:放通匿名用户访问云函数
allow if {
input.cloudbase.resource_type == "functions"
input.subject.auth_type == "anonymous"
}
关于 input 字段的详细说明,请参考 OPA 鉴权策略介绍。
示例
# 直接传入 Rego 内容
tcb policy set 'package authz.user
default allow := false
# 放通匿名用户访问云函数
allow if {
input.cloudbase.resource_type == "functions"
input.subject.auth_type == "anonymous"
}' -e my-env-id
# JSON 格式输出
tcb policy set 'package authz.user
default allow := false' --json -e my-env-id