런타임 시 적용 가능한 기능에 대한 구성 옵션입니다.
서명:
export interface RuntimeOptions
속성
재산 | 유형 | 설명 |
---|---|---|
소비AppCheckToken | 부울 | 요청 시 Firebase 앱 체크 토큰이 사용되는지 여부를 결정합니다. 기본값은 거짓입니다. |
AppCheck 시행 | 부울 | Firebase AppCheck 적용 여부를 결정합니다. |
실패정책 | 실패정책 | 부울 | 함수의 실패 정책으로, 부울 true 빈 재시도 객체를 제공하는 것과 동일합니다. |
수신 설정 | ( INGRESS_SETTINGS_OPTIONS 유형 )[번호] | 재설정값 | 이 함수를 호출할 수 있는 위치를 제어하는 수신 설정입니다. |
호출자 | "공개" | "비공개" | 문자열 | 끈[] | https 함수에 대한 액세스 제어를 설정하는 호출자입니다. |
라벨 | 레코드<문자열, 문자열> | 기능에 설정할 사용자 라벨입니다. |
최대인스턴스 | 번호 | 표현 <번호> | 재설정값 | 병렬 실행이 허용되는 최대 실제 인스턴스 수입니다. |
메모리 | ( VALID_MEMORY_OPTIONS 유형 )[번호] | 표현 <번호> | 재설정값 | 함수에 할당할 메모리 양입니다. |
최소 인스턴스 | 번호 | 표현 <번호> | 재설정값 | 특정 시간에 실행될 실제 인스턴스의 최소 수입니다. |
외부 변경 사항 보존 | 부울 | 함수 소스 외부에서 수정된 함수 구성을 유지할지 여부를 제어합니다. 기본값은 거짓입니다. |
비밀 | (문자열 | SecretParam)[] | |
서비스계정 | "기본값" | 문자열 | 표현 <문자열> | 재설정값 | 함수를 실행할 특정 서비스 계정입니다. |
시간 초과초 | 번호 | 표현 <번호> | 재설정값 | 기능의 시간 초과(초), 가능한 값은 0~540입니다. |
vpc커넥터 | 문자열 | 표현 <문자열> | 재설정값 | 지정된 VPC 커넥터에 클라우드 기능을 연결합니다. |
vpcConnectorEgress 설정 | ( VPC_EGRESS_SETTINGS_OPTIONS 유형 )[번호] | 재설정값 | VPC 커넥터의 송신 설정입니다. |
RuntimeOptions.consumeAppCheckToken
요청 시 Firebase 앱 체크 토큰이 사용되는지 여부를 결정합니다. 기본값은 거짓입니다.
호출 가능 요청 시 앱 체크 토큰을 사용하여 앱 체크 재생 보호 기능을 활성화하려면 이를 true로 설정합니다. 이미 소비된 것으로 확인된 토큰에는 request.app.alreadyConsumed
속성이 true로 설정됩니다.
이 옵션을 true로 설정하여 앱 체크 서비스로 전송되는 경우에만 토큰이 소비되는 것으로 간주됩니다. 토큰을 다른 용도로 사용하면 토큰이 소비되지 않습니다.
이 재생 보호 기능을 사용하려면 앱 체크 백엔드에 대한 추가 네트워크 호출이 필요하며 클라이언트가 선택한 증명 제공자로부터 새로운 증명을 얻도록 강제합니다. 따라서 이는 성능에 부정적인 영향을 미칠 수 있으며 잠재적으로 증명 공급자의 할당량이 더 빨리 고갈될 수 있습니다. 이 기능은 볼륨이 낮거나 보안이 중요하거나 비용이 많이 드는 작업을 보호하는 경우에만 사용하십시오.
이 옵션은 enforceAppCheck
옵션에 영향을 주지 않습니다. 후자를 true로 설정하면 요청에 잘못된 앱 체크 토큰이 포함된 경우 호출 가능 함수가 자동으로 401 Unauthorized 상태 코드로 응답하게 됩니다. 요청에 유효하지만 소비된 앱 체크 토큰이 포함되어 있으면 요청이 자동으로 거부되지 않습니다. 대신, request.app.alreadyConsumed
속성은 true로 설정되고 추가 보안 검사 요구 또는 요청 거부와 같은 추가 결정을 내리기 위해 실행을 핸들러 코드에 전달합니다.
서명:
consumeAppCheckToken?: boolean;
RuntimeOptions.enforceAppCheck
Firebase AppCheck 적용 여부를 결정합니다.
true인 경우 잘못된 토큰이 포함된 요청은 401(승인되지 않음) 오류로 자동 응답합니다. false인 경우 잘못된 토큰이 포함된 요청은 context.app을 undefiend로 설정합니다.
서명:
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
지정된 VPC 커넥터에 클라우드 기능을 연결합니다.
서명:
vpcConnector?: string | Expression<string> | ResetValue;
RuntimeOptions.vpcConnectorEgressSettings
VPC 커넥터의 송신 설정입니다.
서명:
vpcConnectorEgressSettings?: (typeof VPC_EGRESS_SETTINGS_OPTIONS)[number] | ResetValue;