Class: Aws::ElasticLoadBalancingV2::Types::ModifyListenerInput

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-elasticloadbalancingv2/types.rb

Overview

Note:

When making an API call, you may pass ModifyListenerInput data as a hash:

{
  listener_arn: "ListenerArn", # required
  port: 1,
  protocol: "HTTP", # accepts HTTP, HTTPS, TCP, TLS, UDP, TCP_UDP, GENEVE
  ssl_policy: "SslPolicyName",
  certificates: [
    {
      certificate_arn: "CertificateArn",
      is_default: false,
    },
  ],
  default_actions: [
    {
      type: "forward", # required, accepts forward, authenticate-oidc, authenticate-cognito, redirect, fixed-response
      target_group_arn: "TargetGroupArn",
      authenticate_oidc_config: {
        issuer: "AuthenticateOidcActionIssuer", # required
        authorization_endpoint: "AuthenticateOidcActionAuthorizationEndpoint", # required
        token_endpoint: "AuthenticateOidcActionTokenEndpoint", # required
        user_info_endpoint: "AuthenticateOidcActionUserInfoEndpoint", # required
        client_id: "AuthenticateOidcActionClientId", # required
        client_secret: "AuthenticateOidcActionClientSecret",
        session_cookie_name: "AuthenticateOidcActionSessionCookieName",
        scope: "AuthenticateOidcActionScope",
        session_timeout: 1,
        authentication_request_extra_params: {
          "AuthenticateOidcActionAuthenticationRequestParamName" => "AuthenticateOidcActionAuthenticationRequestParamValue",
        },
        on_unauthenticated_request: "deny", # accepts deny, allow, authenticate
        use_existing_client_secret: false,
      },
      authenticate_cognito_config: {
        user_pool_arn: "AuthenticateCognitoActionUserPoolArn", # required
        user_pool_client_id: "AuthenticateCognitoActionUserPoolClientId", # required
        user_pool_domain: "AuthenticateCognitoActionUserPoolDomain", # required
        session_cookie_name: "AuthenticateCognitoActionSessionCookieName",
        scope: "AuthenticateCognitoActionScope",
        session_timeout: 1,
        authentication_request_extra_params: {
          "AuthenticateCognitoActionAuthenticationRequestParamName" => "AuthenticateCognitoActionAuthenticationRequestParamValue",
        },
        on_unauthenticated_request: "deny", # accepts deny, allow, authenticate
      },
      order: 1,
      redirect_config: {
        protocol: "RedirectActionProtocol",
        port: "RedirectActionPort",
        host: "RedirectActionHost",
        path: "RedirectActionPath",
        query: "RedirectActionQuery",
        status_code: "HTTP_301", # required, accepts HTTP_301, HTTP_302
      },
      fixed_response_config: {
        message_body: "FixedResponseActionMessage",
        status_code: "FixedResponseActionStatusCode", # required
        content_type: "FixedResponseActionContentType",
      },
      forward_config: {
        target_groups: [
          {
            target_group_arn: "TargetGroupArn",
            weight: 1,
          },
        ],
        target_group_stickiness_config: {
          enabled: false,
          duration_seconds: 1,
        },
      },
    },
  ],
  alpn_policy: ["AlpnPolicyValue"],
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#alpn_policyArray<String>

[TLS listeners] The name of the Application-Layer Protocol Negotiation (ALPN) policy. You can specify one policy name. The following are the possible values:

  • `HTTP1Only`

  • `HTTP2Only`

  • `HTTP2Optional`

  • `HTTP2Preferred`

  • `None`

For more information, see [ALPN policies] in the *Network Load Balancers Guide*.

[1]: docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies

Returns:

  • (Array<String>)

2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 2635

class ModifyListenerInput < Struct.new(
  :listener_arn,
  :port,
  :protocol,
  :ssl_policy,
  :certificates,
  :default_actions,
  :alpn_policy)
  SENSITIVE = []
  include Aws::Structure
end

#certificatesArray<Types::Certificate>

[HTTPS and TLS listeners] The default certificate for the listener. You must provide exactly one certificate. Set `CertificateArn` to the certificate ARN but do not set `IsDefault`.

Returns:


2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 2635

class ModifyListenerInput < Struct.new(
  :listener_arn,
  :port,
  :protocol,
  :ssl_policy,
  :certificates,
  :default_actions,
  :alpn_policy)
  SENSITIVE = []
  include Aws::Structure
end

#default_actionsArray<Types::Action>

The actions for the default rule.

Returns:


2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 2635

class ModifyListenerInput < Struct.new(
  :listener_arn,
  :port,
  :protocol,
  :ssl_policy,
  :certificates,
  :default_actions,
  :alpn_policy)
  SENSITIVE = []
  include Aws::Structure
end

#listener_arnString

The Amazon Resource Name (ARN) of the listener.

Returns:

  • (String)

2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 2635

class ModifyListenerInput < Struct.new(
  :listener_arn,
  :port,
  :protocol,
  :ssl_policy,
  :certificates,
  :default_actions,
  :alpn_policy)
  SENSITIVE = []
  include Aws::Structure
end

#portInteger

The port for connections from clients to the load balancer. You cannot specify a port for a Gateway Load Balancer.

Returns:

  • (Integer)

2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 2635

class ModifyListenerInput < Struct.new(
  :listener_arn,
  :port,
  :protocol,
  :ssl_policy,
  :certificates,
  :default_actions,
  :alpn_policy)
  SENSITIVE = []
  include Aws::Structure
end

#protocolString

The protocol for connections from clients to the load balancer. Application Load Balancers support the HTTP and HTTPS protocols. Network Load Balancers support the TCP, TLS, UDP, and TCP_UDP protocols. You can’t change the protocol to UDP or TCP_UDP if dual-stack mode is enabled. You cannot specify a protocol for a Gateway Load Balancer.

Returns:

  • (String)

2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 2635

class ModifyListenerInput < Struct.new(
  :listener_arn,
  :port,
  :protocol,
  :ssl_policy,
  :certificates,
  :default_actions,
  :alpn_policy)
  SENSITIVE = []
  include Aws::Structure
end

#ssl_policyString

[HTTPS and TLS listeners] The security policy that defines which protocols and ciphers are supported.

For more information, see [Security policies] in the *Application Load Balancers Guide* or [Security policies] in the *Network Load Balancers Guide*.

[1]: docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html#describe-ssl-policies [2]: docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#describe-ssl-policies

Returns:

  • (String)

2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
# File 'lib/aws-sdk-elasticloadbalancingv2/types.rb', line 2635

class ModifyListenerInput < Struct.new(
  :listener_arn,
  :port,
  :protocol,
  :ssl_policy,
  :certificates,
  :default_actions,
  :alpn_policy)
  SENSITIVE = []
  include Aws::Structure
end