class Aws::ElasticLoadBalancingV2::Types::Action

Information about an action.

Each rule must include exactly one of the following types of actions: `forward`, `fixed-response`, or `redirect`, and it must be the last action to be performed.

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

data as a hash:

    {
      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,
        },
      },
    }

@!attribute [rw] type

The type of action.
@return [String]

@!attribute [rw] target_group_arn

The Amazon Resource Name (ARN) of the target group. Specify only
when `Type` is `forward` and you want to route to a single target
group. To route to one or more target groups, use `ForwardConfig`
instead.
@return [String]

@!attribute [rw] authenticate_oidc_config

\[HTTPS listeners\] Information about an identity provider that is
compliant with OpenID Connect (OIDC). Specify only when `Type` is
`authenticate-oidc`.
@return [Types::AuthenticateOidcActionConfig]

@!attribute [rw] authenticate_cognito_config

\[HTTPS listeners\] Information for using Amazon Cognito to
authenticate users. Specify only when `Type` is
`authenticate-cognito`.
@return [Types::AuthenticateCognitoActionConfig]

@!attribute [rw] order

The order for the action. This value is required for rules with
multiple actions. The action with the lowest value for order is
performed first.
@return [Integer]

@!attribute [rw] redirect_config

\[Application Load Balancer\] Information for creating a redirect
action. Specify only when `Type` is `redirect`.
@return [Types::RedirectActionConfig]

@!attribute [rw] fixed_response_config

\[Application Load Balancer\] Information for creating an action
that returns a custom HTTP response. Specify only when `Type` is
`fixed-response`.
@return [Types::FixedResponseActionConfig]

@!attribute [rw] forward_config

Information for creating an action that distributes requests among
one or more target groups. For Network Load Balancers, you can
specify a single target group. Specify only when `Type` is
`forward`. If you specify both `ForwardConfig` and `TargetGroupArn`,
you can specify only one target group using `ForwardConfig` and it
must be the same target group specified in `TargetGroupArn`.
@return [Types::ForwardActionConfig]

@see docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Action AWS API Documentation

Constants

SENSITIVE