testPermissions()
调用 GCP 中 Resource Manager API 的 Test Iam Permissions 方法,该方法返回服务帐号在 GCP 项目上拥有的权限列表。然后将其与 Remotion 版本所需的权限列表进行验证。
CLI 等效命令为 npx remotion cloudrun permissions
。
如果缺少权限,则该函数不会拒绝错误,而是在返回值中指示缺少的权限。
示例
ts
import {testPermissions } from "@remotion/cloudrun";const {results } = awaittestPermissions ();for (constresult ofresults ) {console .log (result .decision ); // "allowed"console .log (result .permissionName ); // "iam.serviceAccounts.actAs"}
ts
import {testPermissions } from "@remotion/cloudrun";const {results } = awaittestPermissions ();for (constresult ofresults ) {console .log (result .decision ); // "allowed"console .log (result .permissionName ); // "iam.serviceAccounts.actAs"}
参数
具有以下属性的对象:
onTest?
可选
每次执行新测试时调用的回调函数。这使您可以更快地对新的测试结果做出反应,而不必等待函数的返回值。示例:
ts
import {testPermissions } from "@remotion/cloudrun";const {results } = awaittestPermissions ({onTest : (result ) => {console .log (result .decision ); // "allowed"console .log (result .permissionName ); // "iam.serviceAccounts.actAs"},});
ts
import {testPermissions } from "@remotion/cloudrun";const {results } = awaittestPermissions ({onTest : (result ) => {console .log (result .decision ); // "allowed"console .log (result .permissionName ); // "iam.serviceAccounts.actAs"},});
返回值
包含每个必要权限的模拟结果的对象数组。对象包含以下键:
decision
为 true
或 false
。
permissionName
所需权限的标识符。请查看 权限页面 查看所需权限列表。