다음을 통해 공유


Azure API Management 정책을 설정 및 편집하는 방법

적용 대상: 모든 API Management 계층

이 문서에서는 Azure Portal에서 정책 정의를 편집하여 API Management 인스턴스에서 정책을 구성하는 방법을 보여줍니다. 각 정책 정의는 API 요청 및 응답에 대해 순차적으로 실행되는 일련의 인바운드 및 아웃바운드 명령문을 설명하는 XML 문서입니다.

포털의 정책 편집기는 API 게시자가 정책 정의에서 정책을 추가 및 편집할 수 있는 안내 양식을 제공합니다. 정책 코드 편집기에서 직접 XML을 편집할 수도 있습니다.

정책에 대한 자세한 정보:

필수 조건

API Management 인스턴스 및 백 엔드 API가 아직 없는 경우 다음을 참조하세요.

API Management 인스턴스로 이동

  1. Azure Portal에서 API Management 서비스를 검색하여 선택합니다.

    API Management Services 선택

  2. API Management 서비스 페이지에서 API Management 인스턴스를 선택합니다.

    API Management 인스턴스 선택

포털에서 정책 구성

다음 예제에서는 포털의 정책 편집기에서 두 가지 옵션을 사용하여 정책을 구성하는 방법을 보여줍니다.

  • 많은 정책 구성을 간소화하는 단계별 양식 기반 편집기
  • XML을 직접 추가하거나 편집할 수 있는 코드 편집기

이 예제에서 정책은 특정 수신 IP 주소의 요청을 필터링합니다. 선택한 API로 범위가 지정됩니다.

참고 항목

모든 API, 제품 또는 단일 API 작업과 같은 다른 범위에서 정책을 구성할 수 있습니다. 다른 예제는 이 문서의 뒷부분에 있는 범위 구성을 참조하세요.

정책을 구성하려면 다음을 수행합니다.

  1. API Management 인스턴스의 왼쪽 탐색 영역에서 API를 선택합니다.

  2. 이전에 가져온 API를 선택합니다.

  3. 디자인 탭을 선택합니다.

  4. 모든 작업에 정책을 적용하려면 모든 작업을 선택합니다.

  5. 인바운드 처리 섹션에서 + 정책 추가를 선택합니다.

    API Management에서 정책 추가

  6. 인바운드 정책 추가에서 추가할 정책을 선택합니다. 예를 들어 IP 주소 필터링을 선택합니다.

    IP 주소 필터링 정책

    • 표시되는 정책은 구성 중인 정책 섹션(이 경우 인바운드 처리용)으로 범위가 지정됩니다.
    • 원하는 정책이 표시되지 않으면 기타 정책 타일을 선택합니다. 그러면 XML 코드 편집기가 열리고 해당 섹션 및 범위에 대한 전체 정책 목록이 표시됩니다.
  7. 허용된 IP>+ IP 필터 추가를 선택하고 API 요청이 허용된 수신 주소 범위의 첫 번째 및 마지막 IP 주소를 추가합니다. 필요한 경우 다른 IP 주소 범위를 추가합니다.

    허용된 IP 주소 구성

  8. 저장을 선택하여 변경 내용을 API Management 게이트웨이에 즉시 전파합니다.

    이제 ip-filter 정책이 인바운드 처리 섹션에 나타납니다.

다양한 범위에서 정책 구성

API Management를 사용하면 각 정책 섹션의 여러 범위에서 정책 정의를 유연하게 구성할 수 있습니다.

Important

각 범위 또는 정책 섹션에 모든 정책을 적용할 수 있는 것은 아닙니다. 추가하려는 정책이 활성화되지 않은 경우 지원되는 정책 섹션 및 해당 정책의 범위에 있는지 확인하세요. 정책 섹션 및 정책 범위를 검토하려면 정책 참조 토픽에서 사용 섹션을 확인하세요.

참고 항목

백 엔드 정책 섹션에는 하나의 정책 요소만 포함될 수 있습니다. 기본적으로 API Management는 전역 범위의 백 엔드 섹션에서 forward-request 정책을 구성하고 다른 범위에서 base 요소를 구성합니다.

전역 범위

전역 범위는 API Management 인스턴스의 모든 API에 대해 구성됩니다.

  1. API Management 인스턴스의 왼쪽 탐색 영역에서 API>모든 API를 선택합니다.

  2. 디자인 탭을 선택합니다.

    제품 범위에서 정책 구성

  3. 정책 섹션에서 + 정책 추가를 선택하여 양식 기반 정책 편집기를 사용하거나 </>(코드 편집기) 아이콘을 선택하여 XML을 직접 추가하고 편집합니다.

  4. 저장을 선택하여 변경 내용을 API Management 게이트웨이에 즉시 전파합니다.

제품 범위

제품 범위는 선택한 제품에 대해 구성됩니다.

  1. 왼쪽 메뉴에서 제품을 선택한 다음, 정책을 적용할 제품을 선택합니다.

  2. 제품 창에서 정책을 선택합니다.

    글로벌 범위에서 정책 구성

  3. 정책 섹션에서 + 정책 추가를 선택하여 양식 기반 정책 편집기를 사용하거나 </>(코드 편집기) 아이콘을 선택하여 XML을 직접 추가하고 편집합니다.

  4. 저장을 선택하여 변경 내용을 API Management 게이트웨이에 즉시 전파합니다.

API 범위

API 범위는 선택한 API의 모든 작업에 대해 구성됩니다.

  1. API Management 인스턴스의 왼쪽 탐색 영역에서 API를 선택한 다음, 정책을 적용할 API를 선택합니다.

  2. 디자인 탭을 선택합니다.

  3. 모든 작업을 선택합니다.

    API 범위에서 정책 구성

  4. 정책 섹션에서 + 정책 추가를 선택하여 양식 기반 정책 편집기를 사용하거나 </>(코드 편집기) 아이콘을 선택하여 XML을 직접 추가하고 편집합니다.

  5. 저장을 선택하여 변경 내용을 API Management 게이트웨이에 즉시 전파합니다.

작업 범위

작업 범위는 선택한 API 작업에 대해 구성됩니다.

  1. API Management 인스턴스의 왼쪽 탐색 영역에서 API를 선택합니다.

  2. 디자인 탭을 선택합니다.

  3. 정책을 적용할 작업을 선택합니다.

    작업 범위에서 정책 구성

  4. 정책 섹션에서 + 정책 추가를 선택하여 양식 기반 정책 편집기를 사용하거나 </>(코드 편집기) 아이콘을 선택하여 XML을 직접 추가하고 편집합니다.

  5. 저장을 선택하여 변경 내용을 API Management 게이트웨이에 즉시 전파합니다.

정책 구성 재사용

API Management 인스턴스에서 재사용 가능한 정책 조각을 만들 수 있습니다. 정책 조각은 하나 이상의 정책 구성을 포함하는 XML 요소입니다. 정책 조각을 사용하면 XML 코드를 반복하거나 다시 입력할 필요 없이 정책을 일관되게 구성하고 정책 정의를 유지 관리할 수 있습니다.

include-fragment 정책을 사용하여 정책 정의에 정책 조각을 삽입합니다.

base 요소를 사용하여 정책 평가 순서 설정

둘 이상의 범위에서 정책 정의를 구성하는 경우 API 요청 또는 응답에 여러 정책이 적용될 수 있습니다. 다양한 범위의 정책이 적용되는 순서에 따라 요청 또는 응답의 변환이 다를 수 있습니다.

API Management 각 범위의 정책 정의에서 각 섹션에 base 요소를 배치하여 정책 평가 순서를 결정합니다. base 요소는 다음으로 더 넓은(부모) 범위에서 해당 섹션에 구성된 정책을 상속합니다. base 요소는 기본적으로 각 정책 섹션에 포함됩니다.

참고 항목

현재 범위에서 유효 정책을 보려면 정책 편집기에서 유효 정책 계산을 선택합니다.

정책 편집기를 사용하여 정책 평가 순서를 수정하려면 다음을 수행합니다.

  1. 직접 구성한 가장 좁은 범위의 정의로 시작하여 API Management가 먼저 적용됩니다.

    예를 들어 전역 범위 및 API 범위에서 구성된 정책 정의를 사용하는 경우 API 범위의 구성부터 시작합니다.

  2. 섹션 내에 base 요소를 배치하여 부모 범위의 해당 섹션에서 모든 정책을 상속할 위치를 결정합니다.

    예를 들어 API 범위에서 구성된 inbound 섹션에서 전역 범위의 inbound 섹션에 구성된 정책을 상속할 위치를 제어하는 base 요소를 배치합니다. 다음 예에서는 전역 범위에서 상속된 정책이 ip-filter 정책보다 먼저 적용됩니다.

    <policies>
      <inbound>
          <base />
            <ip-filter action="allow">
                <address>10.100.7.1</address>
            </ip-filter>
      </inbound>
      [...]
    </policies>
    

    참고 항목

    • base 요소는 섹션의 정책 요소 앞이나 뒤에 배치할 수 있습니다.
    • 부모 범위에서 정책을 상속하지 base 요소를 제거합니다. 대부분의 경우 권장되지 않습니다.
  3. 계속해서 더 넓은 범위에서 정책 정의의 base 요소를 구성합니다.

    전역 범위 정책에는 부모 범위가 없으며 이 정책에서 base 요소를 사용해도 아무 효과가 없습니다.

Azure의 Microsoft Copilot을 사용하여 정책 만들기에 대한 지원 받기(미리 보기)

Azure의 Microsoft Copilot(미리 보기)은 Azure API Management에 대한 정책 작성 기능을 제공합니다. API Management의 정책 편집기 컨텍스트에서 Azure의 Copilot을 사용하여 구문을 모르는 상태에서 특정 요구 사항과 일치하는 정책을 만들 수도 있고, 사용자에게 정책이 설명되도록 미리 구성했을 수도 있습니다.

Azure의 Copilot에 정책 정의를 생성하라는 메시지를 표시한 다음, 결과를 정책 편집기에 복사하고 필요한 조정을 수행할 수 있습니다. 다양한 옵션에 대한 인사이트를 얻거나, 제공된 정책을 수정하거나, 이미 가지고 있는 정책을 명확히 하기 위해 질문을 합니다. 자세한 정보

정책 작업에 대한 자세한 내용은 다음을 참조하세요.