Çalışma zamanında geçerli olan bir işlev için yapılandırma seçenekleri.
İmza:
export interface RuntimeOptions
Özellikler
Mülk | Tip | Tanım |
---|---|---|
AppCheckToken'ı tüketmek | boolean | Firebase Uygulama Denetimi jetonunun istek üzerine kullanılıp kullanılmayacağını belirler. Varsayılan olarak false olur. |
Uygulama Kontrolü'nü uygula | boolean | Firebase AppCheck'in uygulanıp uygulanmayacağını belirler. |
başarısızlık Politikası | Arıza Politikası | boolean | Boolean true boş bir yeniden deneme nesnesi sağlamaya eşdeğer olduğu işlevin başarısızlık politikası. |
girişAyarları | ( INGRESS_SETTINGS_OPTIONS türü )[sayı] | Değeri Sıfırla | Bu işlevin nereden çağrılabileceğini kontrol eden giriş ayarları. |
çağıran | "genel" | "özel" | dize | sicim[] | https işlevlerine erişim kontrolünü ayarlamak için çağrıcı. |
etiketler | Kayıt<string, string> | İşlevde ayarlanacak kullanıcı etiketleri. |
maxInstances | sayı | İfade <sayı> | Değeri Sıfırla | Paralel olarak çalıştırılmasına izin verilen maksimum gerçek örnek sayısı. |
hafıza | (türü VALID_MEMORY_OPTIONS )[sayı] | İfade <sayı> | Değeri Sıfırla | İşleve ayrılacak bellek miktarı. |
min Örnekler | sayı | İfade <sayı> | Değeri Sıfırla | Belirli bir zamanda çalıştırılacak minimum gerçek örnek sayısı. |
dış değişiklikleri koru | boolean | İşlev kaynağı dışında değiştirilen işlev yapılandırmasının korunup korunmadığını kontrol eder. Varsayılan olarak false olur. |
sırlar | (string | SecretParam)[] | |
hizmetHesabı | "varsayılan" | dize | İfade <string> | Değeri Sıfırla | İşlevin çalıştırılacağı özel hizmet hesabı. |
zaman aşımıSaniye | sayı | İfade <sayı> | Değeri Sıfırla | Fonksiyon için saniye cinsinden zaman aşımı, olası değerler 0 ila 540 arasındadır. |
vpcConnector | dize | İfade <string> | Değeri Sıfırla | Bulut işlevini belirtilen VPC konektörüne bağlayın. |
vpcConnectorEgressSettings | ( VPC_EGRESS_SETTINGS_OPTIONS türü )[sayı] | Değeri Sıfırla | VPC konektörü için çıkış ayarları. |
RuntimeOptions.consumeAppCheckToken
Firebase Uygulama Denetimi jetonunun istek üzerine kullanılıp kullanılmayacağını belirler. Varsayılan olarak false olur.
Çağrılabilir istek üzerine Uygulama Kontrolü belirtecini tüketerek Uygulama Kontrolü tekrar oynatma koruması özelliğini etkinleştirmek için bunu true olarak ayarlayın. Zaten tüketildiği tespit edilen jetonların request.app.alreadyConsumed
özelliği true olarak ayarlanacaktır.
Jetonların yalnızca bu seçeneğin doğru olarak ayarlanmasıyla Uygulama Kontrolü hizmetine gönderilmesi durumunda tüketildiği kabul edilir. Tokenın diğer kullanımları onu tüketmez.
Bu tekrar koruma özelliği, Uygulama Kontrolü arka ucuna ek bir ağ çağrısı gerektirir ve istemcileri, seçilen kanıt sağlayıcılarından yeni bir doğrulama almaya zorlar. Dolayısıyla bu, performansı olumsuz etkileyebilir ve doğrulama sağlayıcılarınızın kotalarının daha hızlı tükenmesine neden olabilir. Bu özelliği yalnızca düşük hacimli, güvenlik açısından kritik veya pahalı işlemleri korumak için kullanın.
Bu seçenek, enforceAppCheck
seçeneğini etkilemez. İkincisini true olarak ayarlamak, istek geçersiz bir Uygulama Denetimi belirteci içerdiğinde çağrılabilir işlevin otomatik olarak 401 Yetkisiz durum koduyla yanıt vermesine neden olur. İstek geçerli ancak tüketilen Uygulama Kontrolü belirteçlerini içerdiğinde istekler otomatik olarak reddedilmeyecektir. Bunun yerine, request.app.alreadyConsumed
özelliği true olarak ayarlanacak ve ek güvenlik kontrollerinin gerekli kılınması veya isteğin reddedilmesi gibi daha ileri kararlar alınması için yürütmeyi işleyici koduna iletecektir.
İmza:
consumeAppCheckToken?: boolean;
RuntimeOptions.enforceAppCheck
Firebase AppCheck'in uygulanıp uygulanmayacağını belirler.
Doğru olduğunda, geçersiz belirteçlere sahip istekler 401 (Yetkisiz) hatasıyla otomatik olarak yanıtlanır. Yanlış olduğunda, geçersiz belirteçlere sahip istekler context.app'i undefiend olarak ayarlar.
İmza:
enforceAppCheck?: boolean;
RuntimeOptions.failurePolicy
Boolean true
boş bir yeniden deneme nesnesi sağlamaya eşdeğer olduğu işlevin başarısızlık politikası.
İmza:
failurePolicy?: FailurePolicy | boolean;
RuntimeOptions.ingressSettings
Bu işlevin nereden çağrılabileceğini kontrol eden giriş ayarları.
İmza:
ingressSettings?: (typeof INGRESS_SETTINGS_OPTIONS)[number] | ResetValue;
RuntimeOptions.invoker
https işlevlerine erişim kontrolünü ayarlamak için çağrıcı.
İmza:
invoker?: "public" | "private" | string | string[];
RuntimeOptions.labels
İşlevde ayarlanacak kullanıcı etiketleri.
İmza:
labels?: Record<string, string>;
RuntimeOptions.maxInstances
Paralel olarak çalıştırılmasına izin verilen maksimum gerçek örnek sayısı.
İmza:
maxInstances?: number | Expression<number> | ResetValue;
RuntimeOptions.memory
İşleve ayrılacak bellek miktarı.
İmza:
memory?: (typeof VALID_MEMORY_OPTIONS)[number] | Expression<number> | ResetValue;
RuntimeOptions.minInstances
Belirli bir zamanda çalıştırılacak minimum gerçek örnek sayısı.
Bulut sunucuları boştayken bellek tahsisi ve CPU tahsisinin %10'u için faturalandırılacaktır.
İmza:
minInstances?: number | Expression<number> | ResetValue;
RuntimeOptions.preserveExternalChanges
İşlev kaynağı dışında değiştirilen işlev yapılandırmasının korunup korunmadığını kontrol eder. Varsayılan olarak false olur.
Henüz Firebase Functions SDK'da bulunmayan, temel platformda mevcut olan yapılandırmayı ayarlarken, preserveExternalChanges
true
olarak ayarlanmasını önemle öneririz. . Aksi takdirde Firebase Functions SDK, eksik yapılandırmayı destekleyen yeni bir SDK sürümü yayınladığında işlevinizin manuel olarak yapılandırılan ayarı yanlışlıkla silinebilir.
İmza:
preserveExternalChanges?: boolean;
RuntimeOptions.secrets
İmza:
secrets?: (string | SecretParam)[];
RuntimeOptions.serviceAccount
İşlevin çalıştırılacağı özel hizmet hesabı.
İmza:
serviceAccount?: "default" | string | Expression<string> | ResetValue;
RuntimeOptions.timeoutSeconds
Fonksiyon için saniye cinsinden zaman aşımı, olası değerler 0 ila 540 arasındadır.
İmza:
timeoutSeconds?: number | Expression<number> | ResetValue;
RuntimeOptions.vpcConnector
Bulut işlevini belirtilen VPC konektörüne bağlayın.
İmza:
vpcConnector?: string | Expression<string> | ResetValue;
RuntimeOptions.vpcConnectorEgressSettings
VPC konektörü için çıkış ayarları.
İmza:
vpcConnectorEgressSettings?: (typeof VPC_EGRESS_SETTINGS_OPTIONS)[number] | ResetValue;
,Çalışma zamanında geçerli olan bir işlev için yapılandırma seçenekleri.
İmza:
export interface RuntimeOptions
Özellikler
Mülk | Tip | Tanım |
---|---|---|
AppCheckToken'ı tüketmek | boolean | Firebase Uygulama Denetimi jetonunun istek üzerine kullanılıp kullanılmayacağını belirler. Varsayılan olarak false olur. |
Uygulama Kontrolü'nü uygula | boolean | Firebase AppCheck'in uygulanıp uygulanmayacağını belirler. |
başarısızlık Politikası | Arıza Politikası | boolean | Boolean true boş bir yeniden deneme nesnesi sağlamaya eşdeğer olduğu işlevin başarısızlık politikası. |
girişAyarları | ( INGRESS_SETTINGS_OPTIONS türü )[sayı] | Değeri Sıfırla | Bu işlevin nereden çağrılabileceğini kontrol eden giriş ayarları. |
çağıran | "genel" | "özel" | dize | sicim[] | https işlevlerine erişim kontrolünü ayarlamak için çağrıcı. |
etiketler | Kayıt<string, string> | İşlevde ayarlanacak kullanıcı etiketleri. |
maxInstances | sayı | İfade <sayı> | Değeri Sıfırla | Paralel olarak çalıştırılmasına izin verilen maksimum gerçek örnek sayısı. |
hafıza | (türü VALID_MEMORY_OPTIONS )[sayı] | İfade <sayı> | Değeri Sıfırla | İşleve ayrılacak bellek miktarı. |
min Örnekler | sayı | İfade <sayı> | Değeri Sıfırla | Belirli bir zamanda çalıştırılacak minimum gerçek örnek sayısı. |
dış değişiklikleri koru | boolean | İşlev kaynağı dışında değiştirilen işlev yapılandırmasının korunup korunmadığını kontrol eder. Varsayılan olarak false olur. |
sırlar | (string | SecretParam)[] | |
hizmetHesabı | "varsayılan" | dize | İfade <string> | Değeri Sıfırla | İşlevin çalıştırılacağı özel hizmet hesabı. |
zaman aşımıSaniye | sayı | İfade <sayı> | Değeri Sıfırla | Fonksiyon için saniye cinsinden zaman aşımı, olası değerler 0 ila 540 arasındadır. |
vpcConnector | dize | İfade <string> | Değeri Sıfırla | Bulut işlevini belirtilen VPC konektörüne bağlayın. |
vpcConnectorEgressSettings | ( VPC_EGRESS_SETTINGS_OPTIONS türü )[sayı] | Değeri Sıfırla | VPC konektörü için çıkış ayarları. |
RuntimeOptions.consumeAppCheckToken
Firebase Uygulama Denetimi jetonunun istek üzerine kullanılıp kullanılmayacağını belirler. Varsayılan olarak false olur.
Çağrılabilir istek üzerine Uygulama Kontrolü belirtecini tüketerek Uygulama Kontrolü tekrar oynatma koruması özelliğini etkinleştirmek için bunu true olarak ayarlayın. Zaten tüketildiği tespit edilen jetonların request.app.alreadyConsumed
özelliği true olarak ayarlanacaktır.
Jetonların yalnızca bu seçeneğin doğru olarak ayarlanmasıyla Uygulama Kontrolü hizmetine gönderilmesi durumunda tüketildiği kabul edilir. Tokenın diğer kullanımları onu tüketmez.
Bu tekrar koruma özelliği, Uygulama Kontrolü arka ucuna ek bir ağ çağrısı gerektirir ve istemcileri, seçilen kanıt sağlayıcılarından yeni bir doğrulama almaya zorlar. Dolayısıyla bu, performansı olumsuz etkileyebilir ve doğrulama sağlayıcılarınızın kotalarının daha hızlı tükenmesine neden olabilir. Bu özelliği yalnızca düşük hacimli, güvenlik açısından kritik veya pahalı işlemleri korumak için kullanın.
Bu seçenek, enforceAppCheck
seçeneğini etkilemez. İkincisini true olarak ayarlamak, istek geçersiz bir Uygulama Denetimi belirteci içerdiğinde çağrılabilir işlevin otomatik olarak 401 Yetkisiz durum koduyla yanıt vermesine neden olur. İstek geçerli ancak tüketilen Uygulama Kontrolü belirteçlerini içerdiğinde istekler otomatik olarak reddedilmeyecektir. Bunun yerine, request.app.alreadyConsumed
özelliği true olarak ayarlanacak ve ek güvenlik kontrollerinin gerekli kılınması veya isteğin reddedilmesi gibi daha ileri kararlar alınması için yürütmeyi işleyici koduna iletecektir.
İmza:
consumeAppCheckToken?: boolean;
RuntimeOptions.enforceAppCheck
Firebase AppCheck'in uygulanıp uygulanmayacağını belirler.
Doğru olduğunda, geçersiz belirteçlere sahip istekler 401 (Yetkisiz) hatasıyla otomatik olarak yanıtlanır. Yanlış olduğunda, geçersiz belirteçlere sahip istekler context.app'i undefiend olarak ayarlar.
İmza:
enforceAppCheck?: boolean;
RuntimeOptions.failurePolicy
Boolean true
boş bir yeniden deneme nesnesi sağlamaya eşdeğer olduğu işlevin başarısızlık politikası.
İmza:
failurePolicy?: FailurePolicy | boolean;
RuntimeOptions.ingressSettings
Bu işlevin nereden çağrılabileceğini kontrol eden giriş ayarları.
İmza:
ingressSettings?: (typeof INGRESS_SETTINGS_OPTIONS)[number] | ResetValue;
RuntimeOptions.invoker
https işlevlerine erişim kontrolünü ayarlamak için çağrıcı.
İmza:
invoker?: "public" | "private" | string | string[];
RuntimeOptions.labels
İşlevde ayarlanacak kullanıcı etiketleri.
İmza:
labels?: Record<string, string>;
RuntimeOptions.maxInstances
Paralel olarak çalıştırılmasına izin verilen maksimum gerçek örnek sayısı.
İmza:
maxInstances?: number | Expression<number> | ResetValue;
RuntimeOptions.memory
İşleve ayrılacak bellek miktarı.
İmza:
memory?: (typeof VALID_MEMORY_OPTIONS)[number] | Expression<number> | ResetValue;
RuntimeOptions.minInstances
Belirli bir zamanda çalıştırılacak minimum gerçek örnek sayısı.
Bulut sunucuları boştayken bellek tahsisi ve CPU tahsisinin %10'u için faturalandırılacaktır.
İmza:
minInstances?: number | Expression<number> | ResetValue;
RuntimeOptions.preserveExternalChanges
İşlev kaynağı dışında değiştirilen işlev yapılandırmasının korunup korunmadığını kontrol eder. Varsayılan olarak false olur.
Henüz Firebase Functions SDK'da bulunmayan, temel platformda mevcut olan yapılandırmayı ayarlarken, preserveExternalChanges
true
olarak ayarlanmasını önemle öneririz. . Aksi takdirde Firebase Functions SDK, eksik yapılandırmayı destekleyen yeni bir SDK sürümü yayınladığında işlevinizin manuel olarak yapılandırılan ayarı yanlışlıkla silinebilir.
İmza:
preserveExternalChanges?: boolean;
RuntimeOptions.secrets
İmza:
secrets?: (string | SecretParam)[];
RuntimeOptions.serviceAccount
İşlevin çalıştırılacağı özel hizmet hesabı.
İmza:
serviceAccount?: "default" | string | Expression<string> | ResetValue;
RuntimeOptions.timeoutSeconds
Fonksiyon için saniye cinsinden zaman aşımı, olası değerler 0 ila 540 arasındadır.
İmza:
timeoutSeconds?: number | Expression<number> | ResetValue;
RuntimeOptions.vpcConnector
Bulut işlevini belirtilen VPC konektörüne bağlayın.
İmza:
vpcConnector?: string | Expression<string> | ResetValue;
RuntimeOptions.vpcConnectorEgressSettings
VPC konektörü için çıkış ayarları.
İmza:
vpcConnectorEgressSettings?: (typeof VPC_EGRESS_SETTINGS_OPTIONS)[number] | ResetValue;