오늘의 인기 글
최근 글
최근 댓글
Today
Total
04-29 01:41
관리 메뉴

우노

[Istio] AuthorizationPolicy란? 본문

DevOps/Istio

[Istio] AuthorizationPolicy란?

운호(Noah) 2023. 11. 5. 14:37

들어가기 앞서,

  • 해당 포스팅에선, Istio의 AuthorizationPolicy에 대해서 다뤄보겠습니다.

AuthorizationPolicy란?

  • Istio의 AuthorizationPolicy는 서비스 메시 내에서 네트워크 트래픽에 대한 엑세스 제어를 정의하는 데 사용되는 Kubernetes Custom Resource Definition(CRD) 중 하나입니다.
  • AuthorizationPolicy를 사용하면 서비스 간 또는 서비스와 클라이언트 간의 통신을 제한하거나 규제할 수 있습니다.

AuthorizationPolicy 예제 코드

  • AuthorizationPolicy 리소스는 Terraform을 사용해 정의하겠습니다.

      resource "kubernetes_manifest" "example_authorization_policy" {
        manifest = {
          apiVersion = "security.istio.io/v1beta1"
          kind       = "AuthorizationPolicy"
          metadata = {
            name      = "example-auth-policy"
            namespace = "your-namespace"
          }
          spec = {
            selector = {
              matchLabels = {
                app = "your-app-label"   # 어떤 서비스에 규칙을 적용할지 설정합니다.
              }
            }
            action = "ALLOW"  # 규칙이 일치하는 경우 어떤 동작을 취할지 설정합니다.
            rules = [
              {
                when = [
                  {
                    key = "remote.ip"
                    values = ["192.168.1.100"]  # 허용할 IP 주소를 지정합니다.
                  }
                ]
              }
            ]
          }
        }
      }
    • 이 AuthorizationPolicy는 Istio 서비스 메시 내에서 “your-app-label” Label을 가진 Service에 대한 액세스를 제어하며,
    • remote.ip가 “192.168.1.100”인 경우에만 액세스를 허용하게 됩니다.

참고

'DevOps > Istio' 카테고리의 다른 글

[Istio] 트래픽 구조  (1) 2023.02.28
Comments