خيارات الضبط لدالة تنطبق في وقت التشغيل.
Signature:
export interface RuntimeOptions
أماكن إقامة
الموقع | النوع | الوصف |
---|---|---|
consumeAppCheckToken | قيمة منطقية | تحدِّد هذه السياسة ما إذا كان الرمز المميّز "فحص التطبيقات من Firebase" سيتم استهلاكه عند الطلب. وتكون القيمة التلقائية على "خطأ". |
enforceAppCheck | قيمة منطقية | تحدِّد هذه السياسة ما إذا كان سيتم فرض ميزة "التحقّق من التطبيقات" من Firebase. |
سياسة الإخفاق | سياسة الإخفاق | منطقية | سياسة الإخفاق للدالة، حيث تكون القيمة المنطقية true مكافئة لتوفير عنصر إعادة محاولة فارغ. |
ingressSettings | (نوع INGRESS_SETTINGS_OPTIONS)[الرقم] | إعادة ضبط القيمة | إعدادات الدخول التي تتحكّم في المكان الذي يمكن استدعاء هذه الدالة منه. |
المُرسِل | "عام" | "خاص" | سلسلة | سلسلة[] | مرسِل لضبط التحكّم في الوصول إلى وظائف https |
labels | سجلّ<string, string> | تصنيفات المستخدم المطلوب ضبطها على الدالة. |
maxInstances | الرقم | التعبير<number> | إعادة ضبط القيمة | الحد الأقصى لعدد المثيلات الفعلية المسموح بتشغيلها بالتوازي. |
الذاكرة | (نوع DE_MEMORY_OPTIONS)[الرقم] | التعبير<number> | إعادة ضبط القيمة | مقدار الذاكرة الذي سيتم تخصيصه للدالة. |
المثيلات الدقيقة | الرقم | التعبير<number> | إعادة ضبط القيمة | الحد الأدنى لعدد المثيلات الفعلية المراد تشغيلها في وقت محدد. |
preserveExternalChanges | قيمة منطقية | تتحكّم هذه السياسة في ما إذا كان سيتم الاحتفاظ بإعدادات الدالة المعدَّلة خارج مصدر الدالة. وتكون القيمة التلقائية على "خطأ". |
الأسرار | (سلسلة | SecretParam)[] | |
serviceAccount | "تلقائي" | سلسلة | التعبير<string> | إعادة ضبط القيمة | حساب خدمة محدَّد للدالة التي يتم تشغيلها. |
timeoutSeconds | الرقم | التعبير<number> | إعادة ضبط القيمة | مهلة الدالة بالثواني، القيم المحتملة هي من 0 إلى 540. |
vpcConnector | سلسلة | التعبير<string> | إعادة ضبط القيمة | ربط دالة السحابة الإلكترونية بموصِّل شبكة VPC المحدّد |
vpcConnectorEgressSettings | (نوع VPC_EGRESS_SETTINGS_OPTIONS)[الرقم] | إعادة ضبط القيمة | إعدادات الخروج لموصل شبكة VPC. |
RuntimeOptions.consumeAppCheckToken
تحدِّد هذه السياسة ما إذا كان الرمز المميّز "فحص التطبيقات من Firebase" سيتم استهلاكه عند الطلب. وتكون القيمة التلقائية على "خطأ".
يمكنك ضبط هذه القيمة على "صحيح" لتفعيل ميزة الحماية من إعادة تشغيل فحص التطبيق من خلال استخدام الرمز المميّز لفحص التطبيقات في طلب قابل للاستدعاء. وسيتمّ ضبط السمة request.app.alreadyConsumed
على "صحيح" للرموز المميّزة التي يتبيّن أنّه يتم استهلاكها من قبل.
لا يُعتبر استخدام الرموز المميزة صالحًا إلا إذا تم إرسالها إلى خدمة "فحص التطبيقات" من خلال ضبط هذا الخيار على "صحيح". لا تؤدي الاستخدامات الأخرى للرمز المميز إلى استهلاكه.
تتطلّب ميزة "حماية إعادة التشغيل" هذه اتصالاً إضافيًا بالشبكة في الخلفية "فحص التطبيق" وتجبر العملاء على الحصول على مصادقة جديدة من موفّري المصادقة المختارين. لذلك يمكن أن يؤثر ذلك سلبًا في الأداء وقد يؤدي إلى استنفاد الخدمات الواردة من موفّري المصادقة. الحصص بسرعة أكبر. ولا تستخدم هذه الميزة إلا لحماية العمليات المنخفضة التكلفة أو ذات الأهمية الأمنية أو المكلفة.
ولا يؤثر هذا الخيار في الخيار "enforceAppCheck
". يؤدي ضبط الخيار الأخير على "صحيح" إلى استجابة الدالة القابلة للاستدعاء تلقائيًا برمز الحالة "401 غير مُصرَّح به" عندما يتضمّن الطلب رمزًا مميّزًا غير صالح لفحص التطبيقات. عندما يتضمّن الطلب رموزًا مميزة صالحة لخدمة "التحقّق من التطبيقات" ولكنها مُستهلكة، لن يتم رفض الطلبات تلقائيًا. بدلاً من ذلك، سيتم ضبط السمة request.app.alreadyConsumed
على "صحيح" وتمرير عملية التنفيذ إلى رمز المعالج لاتّخاذ قرارات إضافية، مثل طلب إجراءات إضافية لفحص الأمان أو رفض الطلب.
Signature:
consumeAppCheckToken?: boolean;
RuntimeOptions.enforceAppCheck
تحدِّد هذه السياسة ما إذا كان سيتم فرض ميزة "التحقّق من التطبيقات" من Firebase.
عندما تكون القيمة true، تستجيب الرموز المميزة غير الصالحة تلقائيًا مع ظهور خطأ 401 (غير مصرح به). عند ضبط السياسة على "false"، يتم ضبط الطلبات التي تتضمّن رموزًا مميزة غير صالحة exit.app على إلغاء التحديد.
Signature:
enforceAppCheck?: boolean;
RuntimeOptions.failurePolicy
سياسة الإخفاق للدالة، حيث تكون القيمة المنطقية true
مكافئة لتوفير عنصر إعادة محاولة فارغ.
Signature:
failurePolicy?: FailurePolicy | boolean;
RuntimeOptions.ingressSettings
إعدادات الدخول التي تتحكّم في المكان الذي يمكن استدعاء هذه الدالة منه.
Signature:
ingressSettings?: (typeof INGRESS_SETTINGS_OPTIONS)[number] | ResetValue;
RuntimeOptions.invoker
مرسِل لضبط التحكّم في الوصول إلى وظائف https
Signature:
invoker?: "public" | "private" | string | string[];
RuntimeOptions.labels
تصنيفات المستخدم المطلوب ضبطها على الدالة.
Signature:
labels?: Record<string, string>;
RuntimeOptions.maxInstances
الحد الأقصى لعدد المثيلات الفعلية المسموح بتشغيلها بالتوازي.
Signature:
maxInstances?: number | Expression<number> | ResetValue;
RuntimeOptions.memory
مقدار الذاكرة الذي سيتم تخصيصه للدالة.
Signature:
memory?: (typeof VALID_MEMORY_OPTIONS)[number] | Expression<number> | ResetValue;
RuntimeOptions.minInstances
الحد الأدنى لعدد المثيلات الفعلية المراد تشغيلها في وقت محدد.
سيتم تحصيل رسوم على المثيلات بهدف تخصيص الذاكرة و% 10 من تخصيص وحدة المعالجة المركزية (CPU) عندما يكون الجهاز غير نشِط لفترة قصيرة.
Signature:
minInstances?: number | Expression<number> | ResetValue;
RuntimeOptions.preserveExternalChanges
تتحكّم هذه السياسة في ما إذا كان سيتم الاحتفاظ بإعدادات الدالة المعدَّلة خارج مصدر الدالة. وتكون القيمة التلقائية على "خطأ".
عند ضبط الإعدادات المتاحة في النظام الأساسي الأساسي والتي لا تتوفّر بعد في حزمة تطوير البرامج لوظائف Firebase، ننصحك بشدة بإعداد السمة preserveExternalChanges
على true
. بخلاف ذلك، عندما تطرح حزمة تطوير البرامج (SDK) لوظائف Firebase إصدارًا جديدًا من حزمة SDK يدعم الإعداد غير المتوفّر، قد يتم محو الإعدادات التي تم ضبطها يدويًا للدالة بدون قصد.
Signature:
preserveExternalChanges?: boolean;
RuntimeOptions.secrets
Signature:
secrets?: (string | SecretParam)[];
RuntimeOptions.serviceAccount
حساب خدمة محدَّد للدالة التي يتم تشغيلها.
Signature:
serviceAccount?: "default" | string | Expression<string> | ResetValue;
RuntimeOptions.timeoutSeconds
مهلة الدالة بالثواني، القيم المحتملة هي من 0 إلى 540.
Signature:
timeoutSeconds?: number | Expression<number> | ResetValue;
RuntimeOptions.vpcConnector
ربط دالة السحابة الإلكترونية بموصِّل شبكة VPC المحدّد
Signature:
vpcConnector?: string | Expression<string> | ResetValue;
RuntimeOptions.vpcConnectorEgressSettings
إعدادات الخروج لموصل شبكة VPC.
Signature:
vpcConnectorEgressSettings?: (typeof VPC_EGRESS_SETTINGS_OPTIONS)[number] | ResetValue;