RuntimeOptions interface

在運行時適用的函數的配置選項。

簽名:

export interface RuntimeOptions 

特性

財產類型描述
消耗AppCheckToken布林值決定是否根據請求使用 Firebase App Check 令牌。預設為 false。
強制應用程式檢查布林值決定是否強制執行 Firebase AppCheck。
失敗策略失敗政策|布林值函數的失敗策略,boolean true相當於提供一個空的重試物件。
入口設置INGRESS_SETTINGS_OPTIONS類型)[數量] |重置值控制從何處呼叫此函數的入口設定。
呼叫者「公共」| 「私人」|字串|細繩[]呼叫者設定 https 函數的存取控制。
標籤記錄<字串,字串>在函數上設定的使用者標籤。
最大實例數數量 |表達<數字> |重置值允許並行運行的最大實際實例數。
記憶VALID_MEMORY_OPTIONS類型)[數量] |表達<數字> |重置值分配給函數的記憶體量。
最小實例數數量 |表達<數字> |重置值在給定時間運行的最小實際實例數。
保留外部更改布林值控制是否保留在函數來源外部修改的函數配置。預設為 false。
秘密(字串 | SecretParam)[]
服務帳戶“預設”|字串|表達<字串> |重置值執行該函數的特定服務帳戶。
超時秒數數量 |表達<數字> |重置值此函數的超時時間(以秒為單位),可能的值為 0 到 540。
vpc連接器字串|表達<字串> |重置值將雲端功能連接到指定的VPC連接器。
vpcConnectorEgressSettingsVPC_EGRESS_SETTINGS_OPTIONS類型)[數量] |重置值VPC 連接器的出口設定。

RuntimeOptions.consumeAppCheckToken

決定是否根據請求使用 Firebase App Check 令牌。預設為 false。

將此設為 true 可透過在可呼叫請求上使用 App Check 令牌來啟用 App Check 重播保護功能。發現已被消耗的令牌會將request.app.alreadyConsumed屬性設為 true。

僅當透過將此選項設為 true 將令牌傳送到 App Check 服務時,令牌才被視為已消耗。令牌的其他用途不會消耗它。

此重播保護功能需要對 App Check 後端進行額外的網路調用,並強制用戶端從所選證明提供者取得新的證明。因此,這可能會對效能產生負面影響,並且可能會更快地耗盡證明提供者的配額。僅使用此功能來保護小批量、安全關鍵或昂貴的操作。

此選項不會影響enforceAppCheck選項。當請求包含無效的 App Check 令牌時,將後者設為 true 將導致可呼叫函數自動回應 401 Unauthorized 狀態代碼。當請求包含有效但已消耗的 App Check 令牌時,請求不會被自動拒絕。相反, request.app.alreadyConsumed屬性將設為 true 並將執行傳遞給處理程序代碼以做出進一步的決策,例如需要額外的安全檢查或拒絕請求。

簽名:

consumeAppCheckToken?: boolean;

RuntimeOptions.enforceAppCheck

決定是否強制執行 Firebase AppCheck。

如果為 true,則具有無效令牌的請求會自動回應 401(未經授權)錯誤。當為 false 時,帶有無效令牌的請求會將 context.app 設定為 undefiend。

簽名:

enforceAppCheck?: boolean;

RuntimeOptions.failurePolicy

函數的失敗策略,boolean true相當於提供一個空的重試物件。

簽名:

failurePolicy?: FailurePolicy | boolean;

RuntimeOptions.ingressSettings

控制從何處呼叫此函數的入口設定。

簽名:

ingressSettings?: (typeof INGRESS_SETTINGS_OPTIONS)[number] | ResetValue;

RuntimeOptions.invoker

呼叫者設定 https 函數的存取控制。

簽名:

invoker?: "public" | "private" | string | string[];

RuntimeOptions.labels

在函數上設定的使用者標籤。

簽名:

labels?: Record<string, string>;

RuntimeOptions.maxInstances

允許並行運行的最大實際實例數。

簽名:

maxInstances?: number | Expression<number> | ResetValue;

運行時選項.內存

分配給函數的記憶體量。

簽名:

memory?: (typeof VALID_MEMORY_OPTIONS)[number] | Expression<number> | ResetValue;

RuntimeOptions.minInstances

在給定時間運行的最小實際實例數。

實例將根據空閒時的記憶體分配和 10% 的 CPU 分配進行計費。

簽名:

minInstances?: number | Expression<number> | ResetValue;

RuntimeOptions.preserveExternalChanges

控制是否保留在函數來源外部修改的函數配置。預設為 false。

當設定底層平台中可用但 Firebase Functions SDK 中尚不可用的配置時,我們強烈建議將preserveExternalChanges設為true 。否則,當 Firebase Functions SDK 發布支援缺失配置的新版 SDK 時,您的函數的手動配置設定可能會無意中被清除。

簽名:

preserveExternalChanges?: boolean;

RuntimeOptions.secrets

簽名:

secrets?: (string | SecretParam)[];

RuntimeOptions.serviceAccount

執行該函數的特定服務帳戶。

簽名:

serviceAccount?: "default" | string | Expression<string> | ResetValue;

RuntimeOptions.timeoutSeconds

此函數的超時時間(以秒為單位),可能的值為 0 到 540。

簽名:

timeoutSeconds?: number | Expression<number> | ResetValue;

RuntimeOptions.vpcConnector

將雲端功能連接到指定的VPC連接器。

簽名:

vpcConnector?: string | Expression<string> | ResetValue;

RuntimeOptions.vpcConnectorEgressSettings

VPC 連接器的出口設定。

簽名:

vpcConnectorEgressSettings?: (typeof VPC_EGRESS_SETTINGS_OPTIONS)[number] | ResetValue;