Azure API Management를 사용하는 경우

완료됨

이제 Azure API Management를 사용하는 것이 적절한 경우를 예시하는 몇 가지 시나리오에 대해 설명하겠습니다. 음식 배달 서비스를 예로 들어 API를 표준화, API 관리 및 노출 중앙 집중화 및 API 보안 개선에 관한 API 수명 주기 관리를 살펴보겠습니다. 다음 기준을 사용하면 Azure API Management가 조직의 API 인벤토리를 관리하고 게시하는 데 적합한 선택인지 여부를 결정하는 데 도움이 됩니다.

의사 결정 기준

조건 분석
API 수 중요한 고려 사항은 관리하는 API의 수입니다. 배포한 API가 많을수록 API 컨트롤의 배포 표준화 및 중앙 집중화의 필요성이 높아집니다.
API 변경 속도 다음 고려 사항은 조직이 API 수정 버전 및 버전을 구현하는 속도입니다. API 수정 버전을 만들고 새 API 버전을 게시하는 속도가 빠를수록 강력하고 유연한 버전 관리 제어 시스템에 대한 필요성이 커집니다.
API 관리 부하 마지막 고려 사항은 API에 적용하는 정책 오버헤드의 양입니다. 정책은 사용 할당량, 호출 속도 제한, 요청 변환 및 요청 유효성 검사 등입니다. API에 필요한 구성 및 옵션이 많을수록 표준화되고 중앙 집중식 정책 구현의 필요성이 높아집니다.

조건 적용

자주 변경되고 상당한 정책 오버헤드가 필요한 대규모 API 배포가 있는 경우 Azure API Management가 수명 주기를 통해 API를 관리하기 위한 올바른 선택입니다. 그러나 이러한 기준이 모든 사용 사례에 동일하게 적용되지는 않습니다. 이러한 기준이 시나리오의 사용 사례에 어떻게 적용되는지 살펴보겠습니다.

Azure API Management를 사용하여 API를 표준화해야 하나요?

단일 관리 인터페이스에서 여러 API를 관리하도록 설정하면 Azure API Management에서 여러 API 간에 쉽게 일관성을 유지할 수 있습니다. 다음을 포함하여 많은 API 기능을 표준화할 수 있습니다.

  • 사양. 모든 API에 REST를 사용하고 JSON 이름-값 쌍에 일관된 명명 체계를 사용하는 것과 같이 API 사양을 표준화하면 개발 시간이 단축되고 오류가 감소하며 조직이 고객 제안 및 시장 추세에 더 빠르게 대응할 수 있습니다.
  • 설명서. API 설명서를 표준화하면 개발자가 API를 빠르게 사용할 수 있습니다. 또한 기술 지원 쿼리를 줄이고 개발자들이 더 많은 API를 사용하도록 장려할 수 있습니다.
  • URL. API에 대한 기본 URL을 표준화하면 소비자 오류가 줄어들고 API 배포에 보다 전문적인 모양이 갖춰집니다.
  • 분석. API 분석을 표준화하면 관리 팀과 엔지니어가 여러 API에서 사용량 및 성능을 비교할 수 있습니다.
  • 규정. 정부 또는 업계 규칙 및 규정을 충족해야 하는 API의 경우 표준화를 통해 모든 API에서 규정 준수를 보장할 수 있습니다.

다양한 구성을 가진 여러 API를 Azure API Management로 가져옵니다. API Management에서 이러한 API는 표준화된 구성을 갖습니다.

대부분의 경우 다음에 따라 표준화에 대한 필요성도 확장됩니다.

  • API 수 증가
  • API 수정 속도 증가
  • API 관리 부하 증가

이러한 요구 사항은 모바일 앱, 웹앱 및 파트너 식당에 대한 API 간에 일관성이 필요한 음식 배달 플랫폼 시나리오에 해당합니다.

Azure API Management를 사용하여 API 작업을 중앙 집중화해야 하나요?

Azure API Management는 여러 API를 단일 관리 창구로 편입하여 모든 API 작업의 중앙 집중화를 향상시킵니다. API Management 서비스가 없으면 각 API는 관리, 배포 및 개발자 액세스 측면에서 독립적입니다. 이 분산형 모델에서는 종종 노력이 중복되고 오버헤드가 증가합니다. API 작업을 중앙 집중화하면 다음과 같은 이점이 생길 수 있습니다.

  • 관리. Azure API Management가 제공하는 관리 인터페이스와 같은 단일 위치에서 정책 만들기, 사용자 관리, 분석과 같은 관리 작업을 적용합니다. 관리 작업을 중앙 집중화하면 이러한 작업을 더 간단하고 효율적으로 실행할 수 있습니다.
  • 배포. Azure API Management 게이트웨이에서 만든 엔드포인트와 같은 단일 기본 URL을 통해 모든 API 요청을 라우팅합니다. 배포 중앙 집중화를 통해 정책과 변환을 더 쉽게 적용할 수 있습니다.
  • 개발자 액세스. 설명서, 코드 샘플, 테스트, 구독과 같은 모든 개발자 리소스를 Azure API Management 개발자 포털과 같은 단일 위치에 배치합니다. 개발자 액세스를 중앙 집중화하면 개발자가 API를 더 쉽게 찾고 사용할 수 있습니다.

API 작업을 중앙 집중화하여 발생하는 효율성은 API 수와 API에 요구되는 전체 관리 부하 크기에 따라 증가하는 경향이 있습니다. API를 중앙 집중화하면 API가 모든 제품에 대해 단일 버전 지정 체계를 사용할 수 있으므로 API가 자주 업데이트되는 경우 큰 도움이 될 수 있습니다.

이러한 모든 요소는 음식 배달 플랫폼 시나리오에 강력하게 적용됩니다. 예를 들어 개발자 포털을 통한 중앙 집중식 소비자 액세스를 통해 새 개발자를 더 쉽게 등록할 수 있으며 이를 통해 플랫폼 API의 수익화가 향상됩니다.

Azure API Management를 사용하여 API에 대한 액세스를 보호해야 하나요?

Azure API Management는 API 보안을 염두에 두고 설계되었습니다. 그래서 많은 조직에서 앱과 디바이스 간의 내부 및 외부 데이터 교환을 위해 API를 사용합니다. 보안에 대한 우연하거나 일관되지 않은 접근 방식은 문제만 일으킬 뿐입니다. 적절한 API 보안 전략은 다음과 같은 기본 사항을 다룹니다.

  • 사용 권한. API로 작업할 수 있는 사용자와 API로 수행할 수 있는 작업을 제어합니다. Azure API Management에서는 모든 API 소비자를 사용자로 하여 해당 사용자를 그룹으로 구성할 수 있으므로 API 액세스를 제어하는 권한을 더 쉽고 효율적으로 적용할 수 있습니다.
  • 액세스. 권한 있는 사용자만 요청을 제출하도록 허용합니다. Azure API Management를 통해 개발자 포털은 사용자에게 구독 키를 제공하며, 여러 형식의 인증 및 JSON 웹 토큰을 사용하여 API에 대한 액세스를 제한할 수 있습니다.
  • 보호. 악의적인 사용으로부터 API를 보호합니다. Azure API Management를 사용하면 속도 제한 및 사용 할당량을 통해 API 액세스를 제한하여 PI의 소비자 API 오용(의도적 또는 실수)을 방지할 수 있습니다.
  • 규정 준수. API가 모든 회사 또는 정부 보안 정책을 충족하도록 합니다. Azure API Management에서 모든 API를 함께 사용하면 규정 준수를 달성하는 보안 정책을 사용하여 해당 API를 더 쉽게 구성할 수 있습니다.

관리하는 API가 많을수록 보안에 대한 필요성이 커지게 됩니다. API가 많을수록 공격 표면이 커지고 데이터 위반 또는 유출 위험이 커지는 것을 의미합니다. 또한 API를 자주 수정할수록 수정 버전 또는 새 버전에서 보안 결함을 발견할 가능성이 높아질 수 있습니다.

이러한 보안 문제는 음식 배달 시나리오에서 가장 중요합니다. 우리의 플랫폼은 식당 결제, 고객 이름 및 주소, 배달 차량 위치 등 많은 중요한 데이터를 생성하고 저장합니다.