Application Load Balancer에 대한 HTTP 헤더 수정 활성화 - Elastic Load Balancing

Application Load Balancer에 대한 HTTP 헤더 수정 활성화

헤더 수정 기능은 기본적으로 비활성화되어 있으며 각 리스너별로 활성화해야 합니다. 자세한 내용은 HTTP 헤더 수정 섹션을 참조하세요.

Console
헤더 수정을 활성화하려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 로드 밸런서를 선택합니다.

  3. Application Load Balancer를 선택합니다.

  4. 리스너 및 규칙 탭에서 프로토콜과 포트를 선택해 리스너의 상세 페이지를 엽니다.

  5. Attributes(속성) 탭에서 Edit(편집)을 선택합니다.

    리스너 속성은 그룹으로 구성됩니다. 활성화할 기능을 선택합니다.

  6. [HTTPS 리스너] 수정 가능한 mTLS/TLS 헤더 이름

    1. 수정 가능한 mTLS/TLS 헤더 이름을 확장합니다.

    2. 수정할 요청 헤더를 활성화하고 해당 헤더 이름을 제공합니다. 자세한 내용은 mTLS/TLS 헤더 이름 바꾸기 섹션을 참조하세요.

  7. 응답 헤더 추가

    1. 응답 헤더 추가를 확장합니다.

    2. 추가할 응답 헤더를 활성화하고 해당 값을 제공합니다. 자세한 내용은 응답 헤더 추가 섹션을 참조하세요.

  8. ALB 서버 응답 헤더

    1. 서버 헤더를 활성화하거나 비활성화합니다.

  9. 변경 사항 저장을 선택합니다.

AWS CLI
헤더 수정을 활성화하려면

modify-listener-attributes 명령을 사용합니다. 속성 목록은 헤더 수정 속성 섹션을 참조하세요.

aws elbv2 modify-listener-attributes \ --listener-arn listener-arn \ --attributes "Key=attribute-name,Value=attribute-value"
CloudFormation
헤더 수정을 활성화하려면

속성을 포함하도록 AWS::ElasticLoadBalancingV2::Listener 리소스를 업데이트합니다. 속성 목록은 헤더 수정 속성 섹션을 참조하세요.

Resources: myHTTPlistener: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref myLoadBalancer Protocol: HTTP Port: 80 DefaultActions: - Type: "forward" TargetGroupArn: !Ref myTargetGroup ListenerAttributes: - Key: "attribute-name" Value: "attribute-value"

헤더 수정 속성

다음은 Application Load Balancer에서 지원하는 헤더 수정 속성입니다.

routing.http.request.x_amzn_mtls_clientcert_serial_number.header_name

X-Amzn-Mtls-Clientcert-Serial-Number의 헤더 이름을 수정합니다.

routing.http.request.x_amzn_mtls_clientcert_issuer.header_name

X-Amzn-Mtls-Clientcert-Issuer의 헤더 이름을 수정합니다.

routing.http.request.x_amzn_mtls_clientcert_subject.header_name

X-Amzn-Mtls-Clientcert-Subject의 헤더 이름을 수정합니다.

routing.http.request.x_amzn_mtls_clientcert_validity.header_name

X-Amzn-Mtls-Clientcert-Validity의 헤더 이름을 수정합니다.

routing.http.request.x_amzn_mtls_clientcert_leaf.header_name

X-Amzn-Mtls-Clientcert-Leaf의 헤더 이름을 수정합니다.

routing.http.request.x_amzn_mtls_clientcert.header_name

X-Amzn-Mtls-Clientcert의 헤더 이름을 수정합니다.

routing.http.request.x_amzn_tls_version.header_name

X-Amzn-Tls-Version의 헤더 이름을 수정합니다.

routing.http.request.x_amzn_tls_cipher_suite.header_name

X-Amzn-Tls-Cipher-Suite의 헤더 이름을 수정합니다.

routing.http.response.server.enabled

HTTP 응답 서버 헤더를 허용할지 또는 제거할지 여부를 나타냅니다.

routing.http.response.strict_transport_security.header_value

브라우저에 사이트는 HTTPS를 통해서만 액세스해야 하며 향후 HTTP를 사용하여 사이트에 액세스하려는 모든 시도는 자동으로 HTTPS로 전환되어야 함을 알리기 위해 Strict-Transport-Security 헤더를 추가합니다.

routing.http.response.access_control_allow_origin.header_value

서버에 액세스할 수 있는 오리진을 지정하기 위해 Access-Control-Allow-Origin 헤더를 추가합니다.

routing.http.response.access_control_allow_methods.header_value

다른 오리진에서 서버에 액세스할 때 허용되는 HTTP 메서드를 지정하기 위해 Access-Control-Allow-Methods 헤더를 추가합니다.

routing.http.response.access_control_allow_headers.header_value

교차 오리진 요청 중에 허용되는 헤더를 지정하기 위해 Access-Control-Allow-Headers 헤더를 추가합니다.

routing.http.response.access_control_allow_credentials.header_value

브라우저가 교차 오리진 요청에 쿠키나 인증 정보와 같은 자격 증명을 포함해야 하는지 여부를 나타내기 위해 Access-Control-Allow-Credentials 헤더를 추가합니다.

routing.http.response.access_control_expose_headers.header_value

브라우저가 요청 클라이언트에 노출할 수 있는 헤더를 지정하기 위해 Access-Control-Expose-Headers 헤더를 추가합니다.

routing.http.response.access_control_max_age.header_value

사전 요청의 결과를 캐시할 수 있는 기간을 초 단위로 지정하기 위해 Access-Control-Max-Age 헤더를 추가합니다.

routing.http.response.content_security_policy.header_value

특정 유형의 보안 위협 위험을 최소화하기 위해 브라우저가 적용하는 제한을 지정하기 위해 Content-Security-Policy 헤더를 추가합니다.

routing.http.response.x_content_type_options.header_value

Content-Type 헤더에 명시된 MIME 유형을 그대로 따르고 변경해서는 안 되는지 여부를 나타내기 위해 X-Content-Type-Options 헤더를 추가합니다.

routing.http.response.x_frame_options.header_value

브라우저가 frame, iframe, embed 또는 object에서 페이지 렌더링을 허용하는지 여부를 나타내기 위해 X-Frame-Options 헤더를 추가합니다.