ตัวเลือกการกำหนดค่าสำหรับฟังก์ชันที่ใช้ได้ขณะรันไทม์
ลายเซ็น:
export interface RuntimeOptions
พร็อพเพอร์ตี้
พร็อพเพอร์ตี้ | ประเภท | คำอธิบาย |
---|---|---|
conssumAppCheckToken | boolean | กำหนดว่าจะใช้โทเค็น Firebase App Check ตามคำขอหรือไม่ ค่าเริ่มต้นคือ "เท็จ" |
บังคับใช้ AppCheck | boolean | กำหนดว่าจะมีการบังคับใช้ Firebase AppCheck หรือไม่ |
failurePolicy | FailurePolicy | บูลีน | นโยบายความล้มเหลวของฟังก์ชัน บูลีน true เทียบเท่ากับการระบุออบเจ็กต์การลองอีกครั้งที่ว่างเปล่า |
การตั้งค่าขาเข้า | (ประเภท INGRESS_SETTINGS_OPTIONS)[จำนวน] | รีเซ็ตค่า | การตั้งค่าข้อมูลขาเข้าซึ่งควบคุมว่าจะเรียกใช้ฟังก์ชันนี้จากที่ใด |
ผู้เรียกใช้ | "สาธารณะ" | "ส่วนตัว" | สตริง | สตริง[] | ผู้เรียกใช้เพื่อตั้งค่าการควบคุมการเข้าถึงในฟังก์ชัน https |
ป้ายกำกับ | บันทึก<สตริง, สตริง> | ป้ายกำกับของผู้ใช้ที่จะตั้งค่าในฟังก์ชัน |
maxInstances | ตัวเลข | นิพจน์<จำนวน> | รีเซ็ตค่า | จำนวนอินสแตนซ์จริงสูงสุดที่อนุญาตให้ทำงานพร้อมกัน |
หน่วยความจำ | (ประเภท VALID_MEMORY_OPTIONS)[จำนวน] | นิพจน์<ตัวเลข> | รีเซ็ตค่า | จำนวนหน่วยความจำที่จะจัดสรรให้กับฟังก์ชัน |
ขั้นต่ำของอินสแตนซ์ | ตัวเลข | นิพจน์<จำนวน> | รีเซ็ตค่า | จำนวนขั้นต่ำของอินสแตนซ์จริงที่จะเรียกใช้ในเวลาที่กำหนด |
รักษาการเปลี่ยนแปลงภายนอก | boolean | ควบคุมว่าจะเก็บการกำหนดค่าฟังก์ชันที่แก้ไขนอกแหล่งที่มาของฟังก์ชันไว้หรือไม่ ค่าเริ่มต้นคือ "เท็จ" |
ความลับ | (สตริง | SecretParam)[] | |
serviceAccount | "ค่าเริ่มต้น" | สตริง | นิพจน์<string> | รีเซ็ตค่า | บัญชีบริการที่เจาะจงให้ฟังก์ชันเรียกใช้ |
ระยะหมดเวลาเป็นวินาที | ตัวเลข | นิพจน์<จำนวน> | รีเซ็ตค่า | ระยะหมดเวลาสำหรับฟังก์ชันในหน่วยวินาที ค่าที่เป็นไปได้คือ 0 ถึง 540 |
vpcConnector | สตริง | นิพจน์<string> | รีเซ็ตค่า | เชื่อมต่อ Cloud Function กับเครื่องมือเชื่อมต่อ VPC ที่ระบุ |
vpcConnectorEgressSettings | (ประเภท VPC_EGRESS_SETTINGS_OPTIONS)[ตัวเลข] | รีเซ็ตค่า | การตั้งค่าข้อมูลขาออกสำหรับเครื่องมือเชื่อมต่อ VPC |
RuntimeOptions.conssumAppCheckToken
กำหนดว่าจะใช้โทเค็น Firebase App Check ตามคำขอหรือไม่ ค่าเริ่มต้นคือ "เท็จ"
ตั้งค่านี้เป็น "จริง" เพื่อเปิดใช้ฟีเจอร์การป้องกันการเล่นซ้ำของ App Check โดยใช้โทเค็น App Check ในคำขอที่เรียกใช้ได้ โทเค็นที่พบว่ามีการใช้อยู่แล้วจะมีการตั้งค่าพร็อพเพอร์ตี้ request.app.alreadyConsumed
เป็น "จริง"
ระบบจะถือว่าใช้โทเค็นต่อเมื่อมีการส่งไปยังบริการ App Check โดยการตั้งค่านี้เป็น "จริง" เท่านั้น การใช้โทเค็นในลักษณะอื่นไม่จำเป็นต้องใช้
ฟีเจอร์การป้องกันการเล่นซ้ำนี้จำเป็นต้องมีการเรียกใช้เครือข่ายเพิ่มเติมไปยังแบ็กเอนด์ App Check และบังคับให้ไคลเอ็นต์รับเอกสารรับรองใหม่จากผู้ให้บริการเอกสารรับรองที่เลือก ดังนั้นจึงอาจส่งผลเสียต่อประสิทธิภาพ และอาจทำให้ผู้ให้บริการเอกสารรับรองของคุณหมดลงได้ โควต้าได้เร็วขึ้น ใช้ฟีเจอร์นี้เพื่อปกป้องการดำเนินการที่มีปริมาณน้อย สำคัญด้านความปลอดภัย หรือมีราคาแพงเท่านั้น
ตัวเลือกนี้ไม่มีผลกับตัวเลือก enforceAppCheck
การตั้งค่าหลังเป็น "จริง" จะทำให้ฟังก์ชันที่เรียกใช้ได้ตอบกลับด้วยรหัสสถานะ 401 Unauthorized โดยอัตโนมัติเมื่อคำขอมีโทเค็น App Check ที่ไม่ถูกต้อง เมื่อคําขอมีโทเค็น App Check ที่ถูกต้องแต่ใช้ไปแล้ว ระบบจะไม่ปฏิเสธคำขอโดยอัตโนมัติ แต่จะตั้งค่าพร็อพเพอร์ตี้ request.app.alreadyConsumed
เป็น "จริง" และส่งผ่านการดำเนินการไปยังโค้ดของเครื่องจัดการเพื่อตัดสินใจเพิ่มเติมแทน เช่น ต้องมีการตรวจสอบความปลอดภัยเพิ่มเติมหรือการปฏิเสธคำขอ
ลายเซ็น:
consumeAppCheckToken?: boolean;
RuntimeOptions.enforceAppCheck
กำหนดว่าจะมีการบังคับใช้ Firebase AppCheck หรือไม่
เมื่อเป็น "จริง" คำขอที่มีโทเค็นที่ไม่ถูกต้องจะตอบกลับอัตโนมัติด้วยข้อผิดพลาด 401 (Unauthorized) หากเป็น "เท็จ" คำขอที่มีโทเค็นที่ไม่ถูกต้องจะตั้ง Context.app เป็นลบล้าง
ลายเซ็น:
enforceAppCheck?: boolean;
RuntimeOptions.failurePolicy
นโยบายความล้มเหลวของฟังก์ชัน บูลีน 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;
RuntimeOptions.memory
ปริมาณหน่วยความจำที่จะจัดสรรให้กับฟังก์ชัน
ลายเซ็น:
memory?: (typeof VALID_MEMORY_OPTIONS)[number] | Expression<number> | ResetValue;
RuntimeOptions.minInstances
จำนวนขั้นต่ำของอินสแตนซ์จริงที่จะเรียกใช้ในเวลาที่กำหนด
ระบบจะเรียกเก็บเงินอินสแตนซ์สำหรับการจัดสรรหน่วยความจำและการจัดสรร CPU 10% ขณะที่ไม่มีการใช้งาน
ลายเซ็น:
minInstances?: number | Expression<number> | ResetValue;
RuntimeOptions.preserveExternalChanges
ควบคุมว่าจะเก็บการกำหนดค่าฟังก์ชันที่แก้ไขนอกแหล่งที่มาของฟังก์ชันไว้หรือไม่ ค่าเริ่มต้นคือ "เท็จ"
เมื่อตั้งค่าการกำหนดค่าที่มีในแพลตฟอร์มที่สำคัญซึ่งยังไม่พร้อมใช้งานใน 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
เชื่อมต่อ Cloud Function กับเครื่องมือเชื่อมต่อ VPC ที่ระบุ
ลายเซ็น:
vpcConnector?: string | Expression<string> | ResetValue;
RuntimeOptions.vpcConnectorEgressSettings
การตั้งค่าข้อมูลขาออกสำหรับเครื่องมือเชื่อมต่อ VPC
ลายเซ็น:
vpcConnectorEgressSettings?: (typeof VPC_EGRESS_SETTINGS_OPTIONS)[number] | ResetValue;