云函数安全规则

最近更新时间:2024-08-20 11:06:01

我的收藏

身份验证

云函数安全规则是基于用户身份的权限管理系统,可以根据当前登录用户的身份进行函数调用权限管理控制。云函数安全规则适用于普通的 C 端身份调用,例如各种客户端的 callFunction 操作,管理端触发、HTTP 触发以及触发器触发不在安全规则的管控范围内。

操作步骤

1. 登录 云开发 CloudBase 控制台,在云函数管理中单击权限控制


2. 编写完成安全规则后单击确定


说明
云控制台和服务端始终有所有云函数调用权限,以下配置仅针对客户端发起的云函数调用有效。
权限修改后现网生效需要1-3分钟,请耐心等待。

编写安全规则

函数安全规则配置在环境级别,即环境内所有函数共享一个配置,配置中通过配置层级控制单个函数行为。
与所有安全规则相同,规则的配置基于 JSON 整体配置,但云函数安全规则配置层级更多:
1. 顶级 key 表征函数名,特殊的 * 表征所有的函数名通配,匹配时优先匹配函数名,当未匹配时将使用 * 的配置。value 为每个函数单独的调用规则子配置。
2. 每个子配置中,key 表示操作名(当前只支持 invoke),value 为 boolean 值或安全规则表达式字符串,例如:
{
"*": {
"invoke": "auth != null"
},
"function1": {
"invoke": false
}
}

限制

1. 安全规则顶级配置必须包含 key 为 * 的配置。
2. 每个函数下的配置中必须包含 invoke 配置。
3. 云函数安全规则暂时只支持有限的 3 种配置,true、false、"auth!=null"分别表示允许调用、不允许调用、以及登录后可调用。默认情况下为登录后可调用,即:
{
"*": {
"invoke": "auth != null"
}
}