Cloud Run サービスにアクセスするために、API Gateway を使用して Firebase Authentication を追加しようとしています。grpc を使用して Cloud Run のサービス エンドポイントにアクセスしています。
type: google.api.Service
config_version: 3
name: myapigateway.my-project.cloud.goog
title: API Gateway + Cloud Run gRPC
backend:
rules:
- selector: "*"
address: "grpcs://mycloudrun-service.run.app"
path_translation: APPEND_PATH_TO_ADDRESS
jwt_audience: "my-project"
usage:
rules:
- selector: "*"
allow_unregistered_calls: false
authentication:
providers:
- id: firebase
jwks_uri: >-
https://www.googleapis.com/service_accounts/v1/metadata/x509/securetoken@system.gserviceaccount.com
issuer: "https://securetoken.google.com/my-project"
audiences: my-project
authorization_url: ""
rules:
- selector: "*"
requirements:
- provider_id: firebase
CLI からの実行中api-config create
に、次のエラーが発生します。
$ gcloud api-gateway api-configs create v1 --api=cosmos-api --project=my-project --grpc-files=api_descriptor.pb,api_config.yaml
Waiting for API Config [v1] to be created for API [cosmos-api]...failed.
ERROR: (gcloud.api-gateway.api-configs.create) Wait for Service Config creation: API Config's backend has no rules. If using gRPC, be sure to specify the 'rules[]' under the 'Backend' field. See https://cloud.google.com/endpoints/docs/grpc-service-config/reference/rpc/google.api#backendrule for more details.
ご覧のとおり、ルールは に記載されていbackend
ます。だから、何が欠けているのかわからない。また、これが grpc で Firebase Auth を使用するための正しいアプローチであるかどうかをアドバイスできますか。GCP で REST + Firebase AUth + API Gateway と同じセットアップを使用しています。