정책이란 무엇인가요?

Apigee X 문서를 보고 있습니다.
Apigee Edge 문서 보기

Apigee를 사용하면 코드를 작성하지 않고 정책을 사용하여 API 동작을 프로그래밍할 수 있습니다. 정책은 특정적으로 제한된 관리 기능을 구현하는 모듈과 같습니다. 정책을 사용하면 API에 일반적인 관리 기능을 쉽게 안정적으로 추가할 수 있습니다. 정책은 보안, 비율 제한, 변환, 미디에이션과 같은 기능을 제공하므로 이러한 기능을 직접 코딩하고 유지할 필요가 없습니다.

Apigee에서 제공하는 정책 유형 집합 이외에도 다양하게 사용할 수 있습니다. 또한 커스텀 스크립트와 코드(예: 자바스크립트 애플리케이션)를 작성하여 API 프록시 기능을 확장하고 Apigee 정책에서 지원하는 기본 관리 기능을 기반으로 혁신할 수 있습니다.

정책 연결 및 시행에 관한 소개 동영상을 시청하세요.

정책 유형

기술적으로 정책은 XML 형식의 구성 파일입니다. 각 정책 유형의 구조(예: 필수 구성 요소와 선택 구성 요소)는 XML 스키마에 의해 정의됩니다. XML 도구에 능숙하다면 GitHub에서 API 플랫폼 샘플의 정책 스키마를 숙지하는 것이 좋습니다.

Apigee 정책 유형은 다음과 같은 기능 카테고리로 분류됩니다.

트래픽 관리

트래픽 관리 카테고리의 정책을 사용하면 API 프록시를 통해 요청 및 응답 메시지의 흐름을 제어할 수 있습니다. 이러한 정책은 운영 수준의 제어와 비즈니스 수준의 제어를 모두 지원합니다. 이를 통해 원시 처리량을 제어할 수 있으며 앱별로 트래픽을 제어할 수도 있습니다. 트래픽 관리 정책 유형을 사용하면 할당량을 적용할 수 있으며 서비스 거부 공격을 완화하는데도 도움이 됩니다.

보안

보안 카테고리의 정책은 인증, 승인은 물론 콘텐츠 기반 보안을 지원합니다.

미디에이션

미디에이션 카테고리의 정책을 사용하면 API 프록시를 통과하는 메시지를 직접 조작할 수 있습니다. 메시지 형식을 XML에서 JSON으로(또는 그 반대로) 변환하거나 하나의 XML 형식을 다른 XML 형식으로 변환할 수 있습니다. 또한 메시지를 파싱하고 새 메시지를 생성하며, 전송 메시지의 값을 변경할 수 있습니다. 또한 미디에이션 정책은 Apigee에서 노출하는 기본 서비스와 상호작용하여 런타임에 앱, 개발자, 보안 토큰, API 제품에 대한 데이터를 검색할 수 있도록 합니다.

확장

확장 카테고리의 정책을 사용하면 Apigee의 확장성을 활용하여 원하는 프로그래밍 언어로 커스텀 동작을 구현할 수 있습니다.

각 정책 유형은 정책 참조 개요에 자세히 설명되어 있습니다. 이 주제에서는 정책을 만드는 방법과 API 프록시 구성의 흐름에 이를 연결하는 방법 등 일반적인 상호작용에 대해 보여줍니다.

정책 변경사항 배포

정책 변경사항을 적용하려면 API 프록시 버전을 환경에 배포해야 합니다. 정책을 연결하거나 기존 정책을 변경한 후 Apigee UI 또는 Apigee API를 사용하여 변경사항을 배포합니다.

정책 시행 확인

정책이 올바르게 적용되었는지 확인하려면 HTTP 클라이언트가 API를 호출해야 합니다. 이 Quota 구성을 확인하려면 할당량 정책에 설정한 할당량 한도가 초과되도록 API 요청을 여러 번 제출합니다. ProxyEndpoint의 기본 경로 설정으로 구성된 URI 경로는 아래 요청에서 /weather입니다.

http://{org_name}-test.apigee.net/weather/forecastrss?w=12797282

1분 내에 요청을 여러 개 제출하면 다음과 같은 오류 메시지가 표시됩니다.

{
   "fault":{
      "faultstring":"policies.ratelimit.QuotaViolation",
      "detail":{
         "errorcode":"policies.ratelimit.QuotaViolation"
      }
   }
}

이는 Apigee가 Quota 정책을 적용하고 있다는 의미입니다.

정책 기반 오류 처리

위의 오류 메시지의 형식을 확인합니다. faultstring 속성과 errorcode 속성이 포함되어 있습니다. 대부분의 경우 이러한 오류를 처리하려면 몇 가지 동작을 구현해야 합니다. 예를 들어 앱이 Quota를 초과한 개발자에게 맞춤설정된 메시지를 보낼 수 있습니다.

오류 처리에 대한 자세한 내용은 오류 처리를 참조하세요.

권장사항: 일반적인 정책 집합

기본 관리 요구사항을 충족하기 위해 API 프록시에는 일반적으로 다음과 같은 정책을 적용합니다.

기본 API 키 검증

ProxyEndpoint 요청 흐름:
  1. SpikeArrest
  2. XMLThreatProtection 또는 JSONThreatProtection
  3. API 키 검증
  4. Quota
  5. ResponseCache
ProxyEndpoint 응답 흐름:
  1. ResponseCache

기본 변환: JSON에서 XML

요청 흐름:
  1. SpikeArrest
  2. JSONThreatProtection
  3. API 키 검증
  4. Quota
  5. JSONToXML
응답 흐름:
  1. XMLToJSON
  2. ResponseCache