Firebase SecurityRules
服务接口。
签名:
export declare class SecurityRules
属性
属性 | 修饰符 | 类型 | 说明 |
---|---|---|---|
应用 | 应用 |
方法
方法 | 修饰符 | 说明 |
---|---|---|
createRuleset(file) | 根据指定的 RulesFile 创建新规则集。 | |
createRulesFileFromSource(name, source) | 使用指定名称和来源创建 RulesFile。如果任何参数无效,则会抛出错误。这是一项本地操作,不涉及任何网络 API 调用。 | |
deleteRuleset(name) | 删除由给定名称标识的 Ruleset。输入名称应该是不含项目 ID 前缀的简称字符串。例如,如需删除 projects/project-id/rulesets/my-ruleset ,请传递简称“my-ruleset”。如果找不到指定的 Ruleset ,则拒绝并返回 not-found 错误。 |
|
getFirestoreRuleset() | 获取当前应用于 Cloud Firestore 的 Ruleset。如果未对 Firestore 应用任何规则集,则拒绝并返回 not-found 错误。 |
|
getRuleset(name) | 获取由指定名称标识的规则集。输入名称应该是不含项目 ID 前缀的简称字符串。例如,如需检索 projects/project-id/rulesets/my-ruleset ,请传递简称“my-ruleset”。如果找不到指定的 Ruleset ,则拒绝并返回 not-found 错误。 |
|
getStorageRuleset(bucket) | 获取当前应用于 Cloud Storage 存储分区的规则集。如果未对存储分区应用任何规则集,则拒绝并返回 not-found 错误。 |
|
listRulesetMetadata(pageSize, nextPageToken) | 检索规则集元数据页面。 | |
releaseFirestoreRuleset(ruleset) | 将指定的 Ruleset 规则集应用于 Cloud Firestore。 | |
releaseFirestoreRulesetFromSource(源) | 根据给定来源创建新的 Ruleset,并将其应用于 Cloud Firestore。 | |
releaseStorageRuleset(ruleset, bucket) | 将指定的规则集规则集应用于 Cloud Storage 存储分区。 | |
releaseStorageRulesetFromSource(source, bucket) | 根据给定来源创建新的规则集,并将其应用于 Cloud Storage 存储分区。 |
SecurityRules.app
签名:
readonly app: App;
SecurityRules.createRuleset()
签名:
createRuleset(file: RulesFile): Promise<Ruleset>;
参数
参数 | 类型 | 说明 |
---|---|---|
文件 | RulesFile | 要添加到新 Ruleset 中的规则文件。 |
返回:
使用新创建的 Ruleset
执行的 promise。
SecurityRules.createRulesFileFromSource()
使用指定名称和来源创建 RulesFile。如果任何参数无效,则会抛出错误。这是一项本地操作,不涉及任何网络 API 调用。
签名:
createRulesFileFromSource(name: string, source: string | Buffer): RulesFile;
参数
参数 | 类型 | 说明 |
---|---|---|
name | 字符串 | 要分配给规则文件的名称。这通常是简短的文件名,有助于识别规则集中的文件。 |
来源 | 字符串 |缓冲 | 规则文件的内容。 |
返回:
一个新的规则文件实例。
示例
const source = '// Some rules source';
const rulesFile = admin.securityRules().createRulesFileFromSource(
'firestore.rules', source);
SecurityRules.deleteRuleset()
删除由给定名称标识的 Ruleset。输入名称应该是不含项目 ID 前缀的简称字符串。例如,如需删除 projects/project-id/rulesets/my-ruleset
,请传递简称“my-ruleset”。如果找不到指定的 Ruleset
,则拒绝并返回 not-found
错误。
签名:
deleteRuleset(name: string): Promise<void>;
参数
参数 | 类型 | 说明 |
---|---|---|
name | 字符串 | 要删除的 Ruleset 的名称。 |
返回:
承诺<void>
删除 Ruleset
时执行的 promise。
SecurityRules.getFirestoreRuleset()
获取当前应用于 Cloud Firestore 的 Ruleset。如果未对 Firestore 应用任何规则集,则拒绝并返回 not-found
错误。
签名:
getFirestoreRuleset(): Promise<Ruleset>;
返回:
通过 Firestore 规则集执行的 promise。
SecurityRules.getRuleset()
获取由指定名称标识的规则集。输入名称应该是不含项目 ID 前缀的简称字符串。例如,如需检索 projects/project-id/rulesets/my-ruleset
,请传递简称“my-ruleset”。如果找不到指定的 Ruleset
,则拒绝并返回 not-found
错误。
签名:
getRuleset(name: string): Promise<Ruleset>;
参数
参数 | 类型 | 说明 |
---|---|---|
name | 字符串 | 要检索的 Ruleset 的名称。 |
返回:
执行时会返回指定 Ruleset
的 promise。
SecurityRules.getStorageRuleset()
获取当前应用于 Cloud Storage 存储分区的规则集。如果未对存储分区应用任何规则集,则拒绝并返回 not-found
错误。
签名:
getStorageRuleset(bucket?: string): Promise<Ruleset>;
参数
参数 | 类型 | 说明 |
---|---|---|
存储桶 | 字符串 | 要检索的 Cloud Storage 存储分区的可选名称。如果未指定,则检索应用于通过 AppOptions 配置的默认存储分区的规则集。 |
返回:
与 Cloud Storage 规则集一起执行的 promise。
SecurityRules.listRulesetMetadata()
检索规则集元数据页面。
签名:
listRulesetMetadata(pageSize?: number, nextPageToken?: string): Promise<RulesetMetadataList>;
参数
参数 | 类型 | 说明 |
---|---|---|
pageSize | 数字 | 页面大小,如果未定义,则为 100。这也是允许的上限。 |
nextPageToken | 字符串 | 下一页令牌。如果未指定,则返回从无偏移量开始的规则集。 |
返回:
执行时带有规则集页面的 promise。
SecurityRules.releaseFirestoreRuleset()
将指定的 Ruleset 规则集应用于 Cloud Firestore。
签名:
releaseFirestoreRuleset(ruleset: string | RulesetMetadata): Promise<void>;
参数
参数 | 类型 | 说明 |
---|---|---|
规则集 | 字符串 |RulesetMetadata | 要应用的规则集的名称,或包含该名称的 RulesetMetadata 对象。 |
返回:
承诺<void>
发布规则集时执行的 promise。
SecurityRules.releaseFirestoreRulesetFromSource()
根据给定来源创建新的 Ruleset,并将其应用于 Cloud Firestore。
签名:
releaseFirestoreRulesetFromSource(source: string | Buffer): Promise<Ruleset>;
参数
参数 | 类型 | 说明 |
---|---|---|
来源 | 字符串 |缓冲 | 要应用的规则来源。 |
返回:
在创建和发布规则集时执行的 promise。
SecurityRules.releaseStorageRuleset()
将指定的规则集规则集应用于 Cloud Storage 存储分区。
签名:
releaseStorageRuleset(ruleset: string | RulesetMetadata, bucket?: string): Promise<void>;
参数
参数 | 类型 | 说明 |
---|---|---|
规则集 | 字符串 |RulesetMetadata | 要应用的规则集的名称,或包含该名称的 RulesetMetadata 对象。 |
存储桶 | 字符串 | 要应用规则的 Cloud Storage 存储分区的可选名称。如果未指定,则会将规则集应用于通过 AppOptions 配置的默认存储分区。 |
返回:
承诺<void>
发布规则集时执行的 promise。
SecurityRules.releaseStorageRulesetFromSource()
根据给定来源创建新的规则集,并将其应用于 Cloud Storage 存储分区。
签名:
releaseStorageRulesetFromSource(source: string | Buffer, bucket?: string): Promise<Ruleset>;
参数
参数 | 类型 | 说明 |
---|---|---|
来源 | 字符串 |缓冲 | 要应用的规则来源。 |
存储桶 | 字符串 | 要应用规则的 Cloud Storage 存储分区的可选名称。如果未指定,则会将规则集应用于通过 AppOptions 配置的默认存储分区。 |
返回:
在创建和发布规则集时执行的 promise。