Çalışma zamanında uygulanabilecek bir işlev için yapılandırma seçenekleri.
İmza:
export interface RuntimeOptions
Özellikler
Özellik | Tür | Açıklama |
---|---|---|
consumeAppCheckToken | boolean | Firebase Uygulama Kontrolü jetonunun istek üzerine kullanılıp kullanılmayacağını belirler. Varsayılan olarak yanlış değerine ayarlanır. |
enforceAppCheck | boolean | Firebase AppCheck'in zorunlu kılınıp uygulanmayacağını belirler. |
failurePolicy | FailurePolicy | Boole | İşlevin hata politikası. Boole true , boş bir yeniden deneme nesnesi sağlamaya eşdeğerdir. |
ingressSettings | (INGRESS_SETTINGS_OPTIONS türü)[sayı] | Değeri Sıfırla | Bu işlevin nereden çağrılabileceğini kontrol eden giriş ayarları. |
çağrıcı | "herkese açık" | "gizli" | dize | dize[] | https işlevlerinde erişim denetimini ayarlamak için çağrıcı. |
etiketler | Kayıt<dize, dize> | İşlevde ayarlanacak kullanıcı etiketleri. |
maxInstances | sayı | İfade<sayı> | Değeri Sıfırla | Paralel olarak çalışmasına izin verilen maksimum gerçek örnek sayısı. |
bellek | (DOĞRU_MEMORY_OPTIONS türü)[sayı] | İfade<sayı> | Değeri Sıfırla | İşleve ayrılacak bellek miktarı. |
minstances | sayı | İfade<sayı> | Değeri Sıfırla | Belirli bir zamanda çalışacak minimum gerçek örnek sayısı. |
koruma haricideğişiklikleri | boolean | İşlev kaynağı dışında değiştirilen işlev yapılandırmasının korunup korunmadığını kontrol eder. Varsayılan olarak yanlış değerine ayarlanır. |
sırlar | (dize | SecretParam)[] | |
serviceAccount | "varsayılan" | dize | İfade<string> | Değeri Sıfırla | İşlevin çalıştırılacağı belirli hizmet hesabı. |
timeoutSeconds | sayı | İfade<sayı> | Değeri Sıfırla | İşlev için saniye cinsinden zaman aşımı. Olası değerler 0 ile 540 arasındadır. |
vpcConnector | dize | İfade<string> | Değeri Sıfırla | Cloud Functions işlevini belirtilen VPC bağlayıcısına bağlayın. |
vpcConnectorEgressSettings | (VPC_EGRESS_SETTINGS_OPTIONS türü)[sayı] | Değeri Sıfırla | VPC bağlayıcısı için çıkış ayarları. |
RuntimeOptions.consumeAppCheckToken
Firebase Uygulama Kontrolü jetonunun istek üzerine kullanılıp kullanılmayacağını belirler. Varsayılan olarak yanlış değerine ayarlanır.
Çağrılabilir istekte Uygulama Kontrolü jetonunu tüketerek Uygulama Kontrolü'nün tekrar oynatma koruması özelliğini etkinleştirmek için bunu doğru olarak ayarlayın. Kullanıldığı tespit edilen jetonların request.app.alreadyConsumed
özelliği true olarak ayarlanır.
Jetonlar, yalnızca bu seçenek doğru değerine ayarlanarak Uygulama Kontrolü hizmetine gönderilirse tüketilebilir olarak kabul edilir. Jetonun diğer kullanımları bu jetonu kullanmaz.
Bu tekrarlama koruması özelliği, Uygulama Kontrolü arka ucuna ek bir ağ çağrısı gerektirir ve istemcileri seçili onay sağlayıcılarından yeni bir onay almaya zorlar. Dolayısıyla bu durum, performansı olumsuz yönde etkileyebilir ve onay sağlayıcılarınızın yetersiz kalmasına neden olabilir. daha hızlı hale getiriyoruz. Bu özelliği yalnızca düşük hacimli, güvenlik açısından kritik öneme sahip veya pahalı işlemleri korumak için kullanın.
Bu seçenek, enforceAppCheck
seçeneğini etkilemez. İkincisinin doğru değerine ayarlanması, istekte geçersiz bir Uygulama Kontrolü jetonu 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ü jetonları içerdiğinde otomatik olarak reddedilmez. Bunun yerine, request.app.alreadyConsumed
özelliği true olarak ayarlanır ve ek güvenlik kontrolleri gerektirme veya isteği reddetme gibi ek kararlar almak için yürütme işlemini işleyici koduna iletir.
İmza:
consumeAppCheckToken?: boolean;
RuntimeOptions.enforceAppCheck
Firebase AppCheck'in zorunlu kılınıp uygulanmayacağını belirler.
Doğru olduğunda, geçersiz jetonlara sahip istekler 401 (Yetkisiz) hatasıyla otomatik olarak yanıt verir. Yanlış olduğunda, geçersiz jeton içeren isteklercontext.app'i tanımlamayacak şekilde ayarlar.
İmza:
enforceAppCheck?: boolean;
RuntimeOptions.failurePolicy
İşlevin hata politikası. Boole true
, boş bir yeniden deneme nesnesi sağlamaya eşdeğerdir.
İ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şlevlerinde erişim denetimini 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ışmasına izin verilen maksimum gerçek örnek sayısı.
İmza:
maxInstances?: number | Expression<number> | ResetValue;
Çalışma ZamanıSeçenekleri.bellek
İşleve ayrılacak bellek miktarı.
İmza:
memory?: (typeof VALID_MEMORY_OPTIONS)[number] | Expression<number> | ResetValue;
RuntimeOptions.minInstances
Belirli bir zamanda çalışacak minimum gerçek örnek sayısı.
Örnekler boştayken bellek tahsisi ve CPU tahsisinin% 10'u için faturalandırılı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 yanlış değerine ayarlanır.
Temel platformda henüz Firebase Functions SDK'sında bulunmayan bir yapılandırmayı ayarlarken preserveExternalChanges
politikasını true
olarak ayarlamanızı önemle tavsiye ederiz. Aksi takdirde, Firebase Functions SDK'sı eksik yapılandırma desteğiyle SDK'nın yeni bir sürümünü yayınladığında işlevinizin manuel olarak yapılandırılmış ayarı yanlışlıkla silinebilir.
İmza:
preserveExternalChanges?: boolean;
RuntimeOptions.secrets
İmza:
secrets?: (string | SecretParam)[];
RuntimeOptions.serviceAccount
İşlevin çalıştırılacağı belirli hizmet hesabı.
İmza:
serviceAccount?: "default" | string | Expression<string> | ResetValue;
RuntimeOptions.timeoutSeconds
İşlev için saniye cinsinden zaman aşımı. Olası değerler 0 ile 540 arasındadır.
İmza:
timeoutSeconds?: number | Expression<number> | ResetValue;
RuntimeOptions.vpcConnector
Cloud Functions işlevini belirtilen VPC bağlayıcısına bağlayın.
İmza:
vpcConnector?: string | Expression<string> | ResetValue;
RuntimeOptions.vpcConnectorEgressSettings
VPC bağlayıcısı için çıkış ayarları.
İmza:
vpcConnectorEgressSettings?: (typeof VPC_EGRESS_SETTINGS_OPTIONS)[number] | ResetValue;