class Aws::AppMesh::Types::UpdateVirtualGatewayInput

@note When making an API call, you may pass UpdateVirtualGatewayInput

data as a hash:

    {
      client_token: "String",
      mesh_name: "ResourceName", # required
      mesh_owner: "AccountId",
      spec: { # required
        backend_defaults: {
          client_policy: {
            tls: {
              certificate: {
                file: {
                  certificate_chain: "FilePath", # required
                  private_key: "FilePath", # required
                },
                sds: {
                  secret_name: "VirtualGatewaySdsSecretName", # required
                },
              },
              enforce: false,
              ports: [1],
              validation: { # required
                subject_alternative_names: {
                  match: { # required
                    exact: ["SubjectAlternativeName"], # required
                  },
                },
                trust: { # required
                  acm: {
                    certificate_authority_arns: ["Arn"], # required
                  },
                  file: {
                    certificate_chain: "FilePath", # required
                  },
                  sds: {
                    secret_name: "VirtualGatewaySdsSecretName", # required
                  },
                },
              },
            },
          },
        },
        listeners: [ # required
          {
            connection_pool: {
              grpc: {
                max_requests: 1, # required
              },
              http: {
                max_connections: 1, # required
                max_pending_requests: 1,
              },
              http2: {
                max_requests: 1, # required
              },
            },
            health_check: {
              healthy_threshold: 1, # required
              interval_millis: 1, # required
              path: "String",
              port: 1,
              protocol: "http", # required, accepts http, http2, grpc
              timeout_millis: 1, # required
              unhealthy_threshold: 1, # required
            },
            port_mapping: { # required
              port: 1, # required
              protocol: "http", # required, accepts http, http2, grpc
            },
            tls: {
              certificate: { # required
                acm: {
                  certificate_arn: "Arn", # required
                },
                file: {
                  certificate_chain: "FilePath", # required
                  private_key: "FilePath", # required
                },
                sds: {
                  secret_name: "VirtualGatewaySdsSecretName", # required
                },
              },
              mode: "STRICT", # required, accepts STRICT, PERMISSIVE, DISABLED
              validation: {
                subject_alternative_names: {
                  match: { # required
                    exact: ["SubjectAlternativeName"], # required
                  },
                },
                trust: { # required
                  file: {
                    certificate_chain: "FilePath", # required
                  },
                  sds: {
                    secret_name: "VirtualGatewaySdsSecretName", # required
                  },
                },
              },
            },
          },
        ],
        logging: {
          access_log: {
            file: {
              path: "FilePath", # required
            },
          },
        },
      },
      virtual_gateway_name: "ResourceName", # required
    }

@!attribute [rw] client_token

Unique, case-sensitive identifier that you provide to ensure the
idempotency of the request. Up to 36 letters, numbers, hyphens, and
underscores are allowed.

**A suitable default value is auto-generated.** You should normally
not need to pass this option.
@return [String]

@!attribute [rw] mesh_name

The name of the service mesh that the virtual gateway resides in.
@return [String]

@!attribute [rw] mesh_owner

The AWS IAM account ID of the service mesh owner. If the account ID
is not your own, then it's the ID of the account that shared the
mesh with your account. For more information about mesh sharing, see
[Working with shared meshes][1].

[1]: https://docs.aws.amazon.com/app-mesh/latest/userguide/sharing.html
@return [String]

@!attribute [rw] spec

The new virtual gateway specification to apply. This overwrites the
existing data.
@return [Types::VirtualGatewaySpec]

@!attribute [rw] virtual_gateway_name

The name of the virtual gateway to update.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/appmesh-2019-01-25/UpdateVirtualGatewayInput AWS API Documentation

Constants

SENSITIVE