마이크로서비스는 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 클라우드 기반 인프라를 구축하고, 글로벌 네트워크를 구축하고, 글로벌 네트워크를 구축하고, 글로벌 네트워크를 구축하고 있습니다.

Azure API 게이트웨이 이해

Azure API Gateway는 클라이언트와 마이크로서비스 백엔드 사이에 앉아 있는 클라우드 기반 서비스입니다. 그것은 모든 API 통화를 수용하고 정의된 정책(authentication, throttling, logging, transform)을 적용하고 적절한 백엔드 서비스에 대한 수신 요청을 전달하는 역 프록시 역할을 합니다. 기존 모놀리식 게이트웨이와 달리 Azure API Gateway는 트래픽을 자동으로 확장하고 Active Directory, Application, Application 및 Monitor와 같은 다른 Azure 서비스와 깊이 통합합니다.

API 게이트웨이를 비교하면 Azure API 게이트웨이는 Azure 생태계와 긴밀한 통합을 담당합니다. Azure를 사용하는 팀에 대해서는 서버, 로드밸런서 또는 역 프록시를 관리해야 하는 작업을 제거함으로써 운영 오버헤드를 감소시킵니다. 또한 RESTful 및 WebSocket API를 모두 지원하며 실시간 애플리케이션에 적합합니다.

Azure API Gateway의 핵심 기능

Routing 및 Transformation 요청

Azure API Gateway 경로 URL 경로, 헤더, 쿼리 매개 변수, 또는 페이로드 콘텐츠에 따라 다른 마이크로 서비스에 수신 요청을 처리 할 수 있습니다. 게이트웨이 정책 표현을 사용하여 여러 백엔드를 정의하고 동적으로지도 할 수 있습니다. 또한 게이트웨이는 요청을 변환하고 응답 페이로드를 변환 할 수 있습니다. 예를 들어 XML을 JSON으로 변환하거나 헤더를 추가하거나, 백엔드에 요청하기 전에 URL을 다시 작성할 수 있습니다. 이 내부 서비스 계약에서 클라이언트 기대를 분리합니다.

인증 및 인증

보안은 일류 기능입니다. Azure API Gateway는 다양한 인증 메커니즘을 지원합니다.

  • OAuth 2.0 / OpenID Connect - Azure AD 또는 OAuth 공급자와 통합하여 토큰을 전달하기 전에 수신 요청을 검증합니다.
  • API Keys – 유효한 키, 공개 또는 파트너 API에 유용하게 존재하는 클라이언트에 대한 빠른 제한 접근.
  • JWT Validation – 자기에 의한 토큰의 서명, 발행자, 청중 및 만료를 검증합니다.
  • ]Client Certificates – mTLS(mutual TLS) 시나리오의 경우, Gateway는 인증서를 사용하여 클라이언트를 인증할 수 있습니다.

이 보안 정책은 IP filtering]]한도]을 결합하여 악성 트래픽을 막을 수 있습니다.

제한 및 할당량

제한 속도는 남용을 방지하고 클라이언트의 공정한 사용을 보장하기 위해 필수적입니다. Azure API Gateway는 ‐key 또는 per‐IP rate limits(e.g., 분당 100개의 요청)을 정의하고 quotas(e.g., 일당 10,000개의 통화)를 설정할 수 있습니다. 제한이 초과될 때, 게이트웨이는 백엔드 서비스에 영향을 미치지 않고 HTTP 429(Too Many Request)를 반환합니다.

공연을 위한 Caching

백엔드 로드를 줄이고 응답 시간을 개선하기 위해, Azure API Gateway는 응답 캐싱을 지원합니다. 작동 당 캐시 기간을 구성할 수 있습니다. 캐시 항목은 게이트웨이 인스턴스를 통해 공유된 분산 캐시에 저장되므로 스케일 아웃 이벤트 중에도 응답이 가능합니다.

Analytics 및 모니터링

모든 요청은 게이트웨이를 통해 흐름을 기록합니다. Azure API 게이트웨이는 Azure Monitor와 Application Insights와 통합하여 세부 메트릭 (초, 대기 시간, 오류율, throttled 요청) 및 감사를 위한 로그를 제공합니다. 500 오류 또는 특정 엔드포인트를 대상으로하는 트래픽 서지에서 급격한 스파이크와 같은 anomalies에 대한 경고를 설정할 수 있습니다.

Azure API Gateway를 사용하여 Microservice API 관리

중앙 관리는 API 게이트웨이를 사용하는 가장 강력한 인수 중 하나입니다. Azure API 게이트웨이는 Azure Portal 내의 통합 대시보드를 제공합니다.

  • API 정의 정의 정의 (OpenAPI/Swagger 형식에서)을 정의하고 자동으로 정책을 생성합니다.
  • 그룹 관련 API는 특정한 접근 계층 (무료, 프리미엄, 기타)로 제품으로.
  • 기존 클라이언트를 끊지 않고 API의 버전을 관리합니다.
  • 여러 단계별 정책 적용, 제품, API 및 작업 - 정밀한 편두통 제어.

인프라 코드의 경우, Azure Resource Manager 템플릿, Bicep 또는 Terraform을 사용하여 게이트웨이, API 및 정책을 정의할 수 있습니다. 이는 CI/CD 파이프라인을 사용하여 API 변경을 자동으로 배포하고 환경 전반에 걸쳐 일관성을 보장합니다.

Azure API Gateway를 사용하여 API를 처리

보안은 다층의 관심사입니다. Azure API Gateway는 방어의 원칙을 강화하는 데 도움이되는 perimeter에서:

인증 및 토큰 검증

OAuth 2.0 토큰을 유효성 검사함으로써, 게이트웨이에서 접근 토큰은, 마이크로서비스는 더 이상 암호를 해독하고 토큰을 검증할 필요가 없습니다. 이것은 보일러판 부호와 유선 보안 감사를 감소시킵니다. 게이트웨이는 또한 당신의 후원에 도달하기 전에 만료되거나 잘못된 토큰을 거부 할 수 있습니다.

위협 보호

Azure API Gateway는 Azure Front Door 또는 Application Gateway를 배포할 때 Azure Web Application Firewall (WAF)와 통합할 수 있습니다. WAF 블록은 API 게이트웨이에 도달하기 전에 일반적인 OWASP ‐ 스타일 공격 (SQL Injection, XSS)을 차단합니다. 또한 게이트웨이 자체는 요청 시체, 제한 콘텐츠 길이 및 변형 된 페이로드를 검증하는 정책을 시행할 수 있습니다.

IP 및 네트워크 보안

특정 IP 주소 또는 범위에 트래픽을 제한 할 수 있습니다. 내부 마이크로 서비스의 경우 게이트웨이는 가상 네트워크 (VNet)에서 통화를 허용하고 공공 인터넷에 노출을 방지 할 수 있습니다. 개인 엔드 포인트와 결합하면 Azure 백본 내에서 모든 백엔드 트래픽을 유지할 수 있습니다.

Custom Security에 대한 정책 표현

정책 표현은 헤더, 쿼리 문자열 또는 신체 콘텐츠 및 결정 검사를 검사하는 인라인 C #와 같은 코드를 작성할 수 있습니다. 예를 들어, 당신은 사용자 정의 헤더를 확인하고 401를 반환 할 수 있습니다. 누락 된 경우, 또는 요청 무결성에 대한 HMAC 서명을 유효. 이 유연성은 게이트웨이를 떠나지 않고 거의 모든 보안 요구 사항을 구현 할 수 있습니다.

성과 및 확장

Azure API Gateway는 높은 처리량을 처리하도록 설계되었습니다. 그것은 요청 및 CPU 활용의 수를 기준으로 자동으로 스케일링됩니다. 두 계층이 있습니다. Developer (테스트 및 평가) 및 Premium]]] (SLA, 무제한 API 정의 및 가상 네트워크 통합 생산을 위해).

더 많은 성능을 최적화하려면:

  • Enable caching 읽음 읽음 읽음 APIs는 백엔드 통화를 줄이기 위해.
  • 사용 백엔드 풀을 사용하여 여러 인스턴스의 트래픽을 배포할 수 있습니다.
  • 임시 회로 차단기 패턴 정책으로 캐스케이드 실패를 방지합니다.
  • Monitor latency Application Insights에 적용하고 적절한 타임아웃을 설정한다.

모니터링 및 분석

Azure Monitor 통합을 통해 모든 API 호출에서 실시간 및 역사적인 데이터를 얻을 수 있습니다. 사용 대쉬보드를 사용하여 사용, 오류율 및 응답 시간으로 최고 API를 시각화합니다. 예를 들어, p95 대기 시간 초과 2 초 또는 4XX 오류율 스파이크를 위해 중요한 임계값에 대한 경고를 설정합니다. 게이트웨이는 또한 로그 분석에서 세부 이벤트 데이터를 기록하고, 사건 후 딥 포렌식 분석이 가능합니다.

Azure API Gateway에 대한 모범 사례

  • ] ] ]
  • Keep Gateway policy simple] – 지연에 영향을 미치는 복잡한 정책 체인을 피하십시오. 디버깅을 위한 개발자 모드를 사용합니다.
  • Azure Front Door를 사용한 클래피 게이트웨이, 글로벌 배포, Geo-redundancy 및 WAF 보호, API Gateway 전 Azure Front Door를 배치합니다.
  • Automate deploys – 인프라 코드 사용 및 일관성 있는 게이트웨이 구성을 적용.
  • 사용 가입 및 제한 – 내부 API를 위한 조차, 타협 서비스에서 비정상적인 트래픽을 검출하기 위하여 throttling을 적용합니다.
  • Enable Diagnostics logs – Ship logs to Log Analytics and connect with Azure Sentinel for security Auditing.

관련 기사

Azure API Gateway는 microservice API를 위한 견고한 확장성 및 보안 항목 포인트를 제공합니다. 이는 인증, 제한, 캐싱 및 모니터링과 같은 교차 절단 문제를 집중하여 개별 서비스에 대한 부담을 줄입니다. Azure의 생태계와 통합함으로써 팀은 고성능, 깊은 가시성 및 운영 단순화성을 달성할 수 있습니다. 단일 아키텍처 아키텍처 또는 녹색 microservices 풍경을 구축하는 것이든 Azure API Gateway는 API를 기반으로 구축된 API를 구축하는 데 있어 API를 구축할 수 있습니다. API는 API를 기반으로 구축된 보안 기반을 구축하고, API를 구축하여 보안을 위한 API를 구축할 수 있습니다.

더 읽기를 위해: