跳到主要内容

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