gRPC services

    gRPC service configuration. This is used by ApiConfigSource and filter configurations.

    envoy_grpc

    () Envoy’s in-built gRPC client. See the gRPC services overview documentation for discussion on gRPC client selection.

    Precisely one of , google_grpc must be set.

    google_grpc

    () Google C++ gRPC client See the documentation for discussion on gRPC client selection.

    Precisely one of envoy_grpc, must be set.

    timeout

    (Duration) The timeout for the gRPC request. This is the timeout for a specific request.

    initial_metadata

    () Additional metadata to include in streams initiated to the GrpcService. This can be used for scenarios in which additional ad hoc authorization headers (e.g. x-foo-bar: baz-key) are to be injected.

    core.GrpcService.EnvoyGrpc

    1. }

    cluster_name

    (string, REQUIRED) The name of the upstream gRPC cluster. SSL credentials will be supplied in the tls_context.

    core.GrpcService.GoogleGrpc

    [core.GrpcService.GoogleGrpc proto]

    Warning

    This message type has status.

    1. {
    2. "target_uri": "...",
    3. "channel_credentials": "{...}",
    4. "call_credentials": [],
    5. "stat_prefix": "...",
    6. "config": "{...}"
    7. }

    target_uri

    (string, REQUIRED) The target URI when using the . SSL credentials will be supplied in channel_credentials.

    channel_credentials

    ()

    call_credentials

    (core.GrpcService.GoogleGrpc.CallCredentials) A set of call credentials that can be composed with .

    stat_prefix

    (string, REQUIRED) The human readable prefix to use when emitting statistics for the gRPC service.

    credentials_factory_name

    () The name of the Google gRPC credentials factory to use. This must have been registered with Envoy. If this is empty, a default credentials factory will be used that sets up channel credentials based on other configuration parameters.

    config

    [core.GrpcService.GoogleGrpc.SslCredentials proto]

    See .

    root_certs

    (core.DataSource) PEM encoded server root certificates.

    private_key

    () PEM encoded client private key.

    cert_chain

    (core.DataSource) PEM encoded client certificate chain.

    core.GrpcService.GoogleGrpc.GoogleLocalCredentials

    [core.GrpcService.GoogleGrpc.GoogleLocalCredentials proto]

    Local channel credentials. Only UDS is supported for now. See .

    1. {}

    core.GrpcService.GoogleGrpc.ChannelCredentials

    See https://grpc.io/docs/guides/auth.html#credential-types to understand Channel and Call credential types.

    1. {
    2. "google_default": "{...}",
    3. "local_credentials": "{...}"

    ssl_credentials

    ()

    Precisely one of ssl_credentials, , local_credentials must be set.

    google_default

    () https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61

    Precisely one of , google_default, must be set.

    local_credentials

    (core.GrpcService.GoogleGrpc.GoogleLocalCredentials)

    Precisely one of , google_default, must be set.

    [core.GrpcService.GoogleGrpc.CallCredentials proto]

    access_token

    () Access token credentials. https://grpc.io/grpc/cpp/namespacegrpc.html#ad3a80da696ffdaea943f0f858d7a360d.

    Precisely one of , google_compute_engine, , service_account_jwt_access, , from_plugin must be set.

    google_compute_engine

    () Google Compute Engine credentials. https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61

    Precisely one of , google_compute_engine, , service_account_jwt_access, , from_plugin must be set.

    () Google refresh token credentials. https://grpc.io/grpc/cpp/namespacegrpc.html#a96901c997b91bc6513b08491e0dca37c.

    Precisely one of , google_compute_engine, , service_account_jwt_access, , from_plugin must be set.

    service_account_jwt_access

    () Service Account JWT Access credentials. https://grpc.io/grpc/cpp/namespacegrpc.html#a92a9f959d6102461f66ee973d8e9d3aa.

    Precisely one of , google_compute_engine, , service_account_jwt_access, , from_plugin must be set.

    google_iam

    () Google IAM credentials. https://grpc.io/grpc/cpp/namespacegrpc.html#a9fc1fc101b41e680d47028166e76f9d0.

    Precisely one of , google_compute_engine, , service_account_jwt_access, , from_plugin must be set.

    from_plugin

    () Custom authenticator credentials. https://grpc.io/grpc/cpp/namespacegrpc.html#a823c6a4b19ffc71fb33e90154ee2ad07. .

    Precisely one of access_token, , google_refresh_token, , google_iam, must be set.

    core.GrpcService.GoogleGrpc.CallCredentials.ServiceAccountJWTAccessCredentials

    1. {
    2. "json_key": "...",
    3. "token_lifetime_seconds": "..."
    4. }

    json_key

    (string)

    token_lifetime_seconds

    ()

    core.GrpcService.GoogleGrpc.CallCredentials.GoogleIAMCredentials

    1. {
    2. "authorization_token": "...",
    3. "authority_selector": "..."

    authorization_token

    (string)

    authority_selector

    ()

    [core.GrpcService.GoogleGrpc.CallCredentials.MetadataCredentialsFromPlugin proto]

    name

    ()

    config

    (Struct)

    Only one of , typed_config may be set.

    typed_config

    Only one of , typed_config may be set.