포털에서 SmartDocs를 사용하여 사양 편집기를 사용하여 사양을 만들고API를 게시하는 경우 Apigee Edge는 OpenAPI 사양 3.0을 지원하지만 일부 기능은 아직 지원되지 않습니다.
예를 들어 다음의 OpenAPI 사양 3.0 기능이 아직 지원되지 않습니다.
스키마 결합 및 확장을 위한 allOf 속성
원격 참조
OpenAPI 사양에서 지원되지 않는 기능을 참조하는 경우, 도구가 기능을 무시하지만 API 참조 문서는 계속 렌더링합니다. 다른 경우에는 지원되지 않는 기능이 API 참조 문서의 성공적인 렌더링을 방지하는 오류를 일으킵니다. 두 경우 모두 지원되지 않는 기능이 향후 출시 버전에서 지원될 때까지 사용되지 않도록 OpenAPI 사양을 수정해야 합니다.
참고: API 참조 문서를 렌더링할 때 사양 편집기는 SmartDocs보다 제한이 적으므로 도구에 따라 결과가 다를 수 있습니다.
포털에서 이 API 사용해 보기를 사용하는 경우 OpenAPI 사양에서 consumes에 설정된 값에 관계없이 Accept 헤더가 application/json으로 설정됩니다.
NGINX의 ngx_http_rewrite_module에 영향을 미치는 취약점 (CVE-2026-42945)이 공개되었습니다. 이 모듈이 NGINX에 정적으로 컴파일되므로 보안 스캔 도구가 프라이빗 클라우드용 Apigee Edge에 포함된 NGINX 바이너리에 플래그를 지정할 수 있습니다.
프라이빗 클라우드용 Apigee Edge에 미치는 영향:
프라이빗 클라우드용 Apigee Edge는 기본 제공 구성에서 이 취약점의 영향을 받지 않습니다. CVE-2026-42945의 악용 가능성은 특정 NGINX 구성 패턴, 특히 특정 순서로 rewrite 지시어의 사용에 따라 다릅니다. 이러한 패턴은 표준 프라이빗 클라우드용 Apigee Edge NGINX 구성에 없습니다.
필요한 조치:
기본 프라이빗 클라우드용 Apigee Edge 구성의 경우: 패치, 업그레이드 또는 운영 변경이 필요하지 않습니다. CVE-2026-42945에 관한 스캐너 발견 항목은 기본 설치의 거짓양성으로 처리될 수 있습니다. 다음 텍스트를 사용하여 취약점 관리 시스템에서 이 예외를 문서화할 수 있습니다.
CVE-2026-42945 — Accepted exception (false positive for Apigee Edge for Private Cloud). Apigee Edge for Private Cloud does not use the rewrite directive in any shipped NGINX configuration. The vulnerable code path in ngx_http_rewrite_module is configuration-gated and is not reachable in the default Apigee Edge for Private Cloud deployment.
맞춤설정된 NGINX 구성의 경우: 프라이빗 클라우드용 Apigee Edge 설치 내에서 NGINX 구성 파일을 수동으로 수정한 경우 (예: /opt/nginx 아래) 다음 자체 검사를 실행하여 맞춤설정으로 인해 실수로 취약한 패턴이 도입되지 않았는지 확인해야 합니다.
rewrite 지시어 확인: 각 NGINX 노드에서 다음 명령어를 실행합니다.
sudo grep -rnI '^\s*rewrite\b' /opt/nginx
결과 분석:
명령어가 출력을 반환하지 않으면 시스템이 영향을 받지 않습니다.
일치하는 항목이 발견되면 각 인스턴스를 검토합니다. 취약점은 지정된 블록에 대해 다음 조건을 모두 충족하는 경우에만 존재합니다.
rewrite 지시어가 사용됩니다.
동일한 구성 블록 내에서 다른 rewrite, if 또는 set 지시어가 바로 뒤따릅니다.
이름이 지정되지 않은 PCRE 캡처 그룹 (예: $1, $2 등)이 지시어에 사용됩니다.
지시어의 대체 문자열에 물음표 (?)가 포함되어 있습니다.
완화 (취약한 경우): 맞춤설정 구성의 일부에 대해 위의 조건이 모두 참인 경우 다음을 수행하여 완화합니다.
대체 문자열에서 물음표 (?)를 삭제합니다.
이름이 지정되지 않은 PCRE 캡처 그룹 대신 이름이 지정된 PCRE 캡처 그룹을 사용합니다.
이름 'BC'를 사용하여 Bouncy Castle 암호화 프로바이더를 로드하려는 고객 Java 콜아웃이 실패할 수 있습니다. 기본 프로바이더가 FIPS를 지원하도록 Bouncy Castle FIPS로 변경되었기 때문입니다. 사용할 새 프로바이더 이름은 "BCFIPS"입니다.
프라이빗 클라우드용 Edge 4.53.00
Java 호출
이름 'BC'를 사용하여 Bouncy Castle 암호화 프로바이더를 로드하려는 고객 Java 콜아웃이 실패할 수 있습니다. 기본 프로바이더가 FIPS를 지원하도록 Bouncy Castle FIPS로 변경되었기 때문입니다. 사용할 새 프로바이더 이름은 "BCFIPS"입니다.
프라이빗 클라우드용 Edge 4.52.01 Mint 업데이트
이 문제는 MINT를 사용하거나 프라이빗 클라우드용 Edge 설치에서 MINT를 사용 설정한 사용자에게만 영향을 미칩니다.
영향을 받는 구성요소: edge-message-processor
문제: 수익 창출이 사용 설정되어 있고 4.52.01을 새로 설치하거나 이전 프라이빗 클라우드 버전에서 업그레이드하는 경우 메시지 프로세서에 문제가 발생합니다. 열린 스레드 수가 점진적으로 증가하여 리소스가 소진됩니다. edge-message-processor system.log에 다음 예외가 표시됩니다.
최근 프라이빗 클라우드용 Apigee Edge를 포함하여 HTTP/2 프로토콜 (CVE-2023-44487)의 여러
구현에서 서비스 거부 (DoS) 취약점이 발견되었습니다. 이 취약점으로 인해 Apigee API 관리 기능에 대한 DoS가 발생할 수 있습니다.
자세한 내용은 Apigee 보안 게시판 GCP-2023-032를 참고하세요.
프라이빗 클라우드용 Edge 라우터 및 관리 서버 구성요소는
인터넷에 노출되며 잠재적으로 취약할 수 있습니다. HTTP/2가 프라이빗 클라우드용 Edge의 다른 Edge 관련 구성요소의 관리
포트에서 사용 설정되더라도 이러한 구성요소는
인터넷에 노출되지 않습니다. Cassandra, Zookeeper 등과 같은 에지가 아닌 구성요소에서
HTTP/2는 사용 설정되지 않습니다. 프라이빗 클라우드용 Edge 취약점을 해결하려면 다음 단계를 따르는 것이 좋습니다.
파일
/opt/apigee/customer/application/message-processor.properties이
apigee:apigee 소유인지 확인합니다.
각 메시지 프로세서를 다시 시작합니다.
연결 풀 JNDI
속성이 적용되는지 확인하려면
tcpdump를 실행하여 시간 경과에 따른 LDAP 연결 풀의 동작을 관찰하면 됩니다.
높은 요청 처리 지연 시간
139051927: 메시지 프로세서에서 발견된 높은 프록시 처리 지연 시간이 모든 API 프록시에 영향을 미칩니다. 증상으로는 일반
API 응답
시간보다 200~300ms 지연되는 처리 시간이 있으며 TPS가 낮은 경우에도 무작위로 발생할 수 있습니다. 메시지 프로세서가 연결하는 대상 서버가 50개를 초과할 때 발생할 수 있습니다.
근본 원인:
메시지 프로세서는 대상 서버로의 아웃바운드 연결을 위해 대상 서버 URL을 HTTPClient 객체에 매핑하는 캐시를 유지합니다. 기본적으로 이 설정은 50으로 설정되어 있으며 대부분의 배포에 너무 낮을 수 있습니다. 배포에 설정에 여러 조직/환경 조합이 있고
총 50개를 초과하는 많은 대상 서버가 있는 경우 대상 서버 URL이
캐시에서 계속 삭제되어 지연 시간이 발생합니다.
유효성 검사:
대상 서버 URL 삭제로 인해 지연 시간 문제가 발생하는지 확인하려면
메시지 프로세서 system.logs에서
키워드 "onEvict" 또는 "Eviction"을 검색합니다. 로그에 이러한 키워드가 있으면 캐시 크기가 너무 작기 때문에 대상 서버 URL
이 HTTPClient 캐시에서 삭제되고 있음을 나타냅니다.
해결 방법:
프라이빗 클라우드용 Edge 버전 19.01 및 19.06의 경우 HTTPClient
캐시 /opt/apigee/customer/application/message-processor.properties를 수정하고 구성할 수 있습니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2026-05-28(UTC)"],[],[]]