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