오늘의 인기 글
최근 글
최근 댓글
Today
Total
05-10 00:03
관리 메뉴

우노

[Terraform] GCLB 접근 시, 헤더 일치 여부에 따른 접근 허용 설정 본문

DevOps/Terraform

[Terraform] GCLB 접근 시, 헤더 일치 여부에 따른 접근 허용 설정

운호(Noah) 2023. 6. 4. 16:42

들어가기 앞서,

  • 해당 포스트에선, Terraform을 사용해, Google Cloud Load Balancer(GCLB) 접근 시 특정 헤더 일치 여부에 따라 접근을 허용할 수 있도록 설정하는 방법에 대해서 다뤄보겠습니다.

예제 코드

resource "google_compute_url_map" "urlmap" {
  name        = "urlmap"
  description = "a description"
  default_service = google_compute_backend_service.home.id

  host_rule {
    hosts        = ["mysite.com"]
    path_matcher = "allpaths"
  }

  path_matcher {
    name = "allpaths"
    default_service = google_compute_backend_service.home.id

    # Request의 Authorization 헤더에 "bearer"가 허락된 토큰값인 경우에만 접근 허용
    route_rules {
      priority = 1
      match_rules {
        header_matches {
          header_name = "Authorization"
          exact_match = "Bearer ${토큰}"
        }
      }
      route_action {
        weighted_backend_services {
          backend_service = "토큰 일치 시 접근할 백엔드서비스의 ID"
          weight          = 100
        }
      }
    }
  }
}

참고

Comments