180608 - 퍼블릭 클라우드용 Apigee Edge 출시 노트

Apigee Edge 문서를 보고 있습니다.
Apigee X 문서로 이동하세요.
info

2018년 9월 24일 월요일에 퍼블릭 클라우드용 Apigee Edge의 새 버전이 출시되었습니다.

프라이빗 클라우드 고객: 이 클라우드 출시 버전이 프라이빗 클라우드 버전에 포함되어 있는지 확인하세요. 버전에 포함된 클라우드 출시 버전을 보려면 버전 출시 노트를 참조하세요. 또한 출시 버전 번호를 비교하여 이를 알아보는 방법은 출시 버전 번호 지정 정보를 참고하세요.

질문 또는 문제: Apigee Edge 지원팀에 문의하기

출시 알림: http://status.apigee.com으로 이동하여 업데이트 구독을 클릭합니다.

출시 노트 홈페이지

새로운 기능 및 업데이트

다음은 이번 출시의 새로운 기능과 업데이트입니다.

문제 ID 구성요소 이름 설명
67506562 API 런타임

JavaScript 정책의 SSL/TLS 지원

JavaScript 정책을 사용하면 외부 서비스에 대한 보안 SSL/TLS 호출을 위해 <SSLInfo>를 구성할 수 있습니다. 자세한 내용은 JavaScript 정책 문서를 참고하세요.

77149507 API 런타임

Edge 라우터에서 사용할 수 있는 SSL/TLS 변수

Edge 퍼블릭 클라우드가 Netty 라우터에서 Nginx로 전환되면서 일부 SSL/TLS 흐름 변수를 더 이상 사용할 수 없게 되었습니다. 이 업데이트로 일부 SSL/TLS 변수를 다시 사용할 수 있습니다. 자세한 내용은 API 프록시에서 TLS 연결 정보에 액세스를 참고하세요.

67310628 API 런타임

콜아웃 개선을 위한 httpClient의 JavaScript 콜백 지원

Apigee의 JavaScript 객체 모델에 있는 httpClient 객체를 사용하면 API 프록시에서 외부 서비스를 호출할 수 있습니다. 이제 httpClient에서 콜백을 지원하므로 waitForComplete()이 필요하지 않아 광고 문구 코드를 간소화하고 실적이 더 우수한 광고 문구를 만들 수 있습니다.

예: 이전

ex1 = httpClient.get("http://example.com");
ex1.waitForComplete();

if (ex1.isSuccess())  {
    response1 = ex1.getResponse();
    context.setVariable('example.status',response1.status);
} else {
   error = ex1.getError();
   context.setVariable('example.error','Woops: ' + error);
}

예: 지금

function onComplete(response, error) {
    if (response) {
        context.setVariable('example.status', response.status);
    } else {
       context.setVariable('example.error', 'Woops: ' + error);
    }
}
// Function callback allowed as an argument.
httpClient.get("http://example.com", onComplete);
80298811 관리 서버

새 관리 API (베타): 컨슈머 키에 할당된 API 제품 업데이트

개발자 앱에는 특정 API 제품과 연결된 소비자/API 키가 있습니다. 새 관리 API (베타 출시)를 사용하면 단일 소비자 키와 연결된 API 제품을 변경할 수 있습니다.

다음 cURL 예시에서는 고객 키가 이미 product1이라는 제품과 연결되어 있다고 가정합니다. API 호출은 고객 키를 변경하여 대신 product2product3와 연결되도록 합니다.

JSON 페이로드

curl -i -X PUT -H "Content-Type: application/json" \
"https://api.enterprise.apigee.com/v1/organizations/org_name/\
developers/developer_email_or_id/apps/app_name/\
keys/consumer_key/apiproducts" \
-d '["product2","product3"]' \
-u account_email

XML 페이로드

curl -i -X PUT -H "Content-Type: application/xml" \
"https://api.enterprise.apigee.com/v1/organizations/org_name/\
developers/developer_email_or_id/apps/app_name/\
keys/consumer_key/apiproducts" \
-d '<List><Item>product2</Item><Item>product3</Item></List>' \
-u account_email
113700413 호스팅된 대상

토큰 새로고침 로직이 깨짐

112481174 호스팅된 대상

Turbo 오류로 인해 프록시 배포 취소가 실패하지 않도록 함

111443934 호스팅된 대상

Edge에서 배포 API 구현 간소화

110897740 호스팅된 대상

터보 애플리케이션/버전의 적절한 삭제 지원 구현

110894391 호스팅된 대상

HTTP 요청/재시도를 간소화하기 위해 Edge에서 TurboService 리팩터링

110377069 애널리틱스

새 애널리틱스 측정기준 및 x_forwarded_for_ip 측정기준 변경

이번 클라우드용 Edge 출시로 Edge 애널리틱스에서 Edge가 x_forwarded_for_ip 측정기준을 설정하는 방식이 변경되었습니다. 이전에는 X-Forwarded-For 헤더에 IP 주소가 여러 개 있는 경우 x_forwarded_for_ip 측정기준에 나열된 마지막 IP 주소만 포함되었습니다. 고객은 x_forwarded_for_ip 측정기준을 사용하여 Edge에 API 요청을 보내는 클라이언트의 IP 주소를 확인하는 경우가 많았습니다.

이번 출시를 통해 x_forwarded_for_ip 측정기준에는 이제 X-Forwarded-For 헤더의 전체 IP 주소 목록이 포함됩니다.

경고: X-Forwarded-For 헤더는 액세스가 거부된 IP에 의해 스푸핑될 수 있습니다. 단, 헤더의 마지막 주소는 예외입니다. 이 주소는 Edge가 마지막 외부 TCP 핸드셰이크에서 수신한 IP 주소입니다. Edge에 API 요청을 보내는 원래 클라이언트 IP 주소를 확인하기 위해 이 출시에서는 Edge 분석에 ax_resolved_client_ip라는 새로운 측정기준을 추가합니다.

이제 맞춤 보고서 또는 맞춤 보고서의 필터 조건에서 ax_resolved_client_ip 측정기준을 사용하여 API 요청을 하는 클라이언트의 IP 주소를 확인할 수 있습니다. ax_resolved_client_ip 측정기준에 대한 자세한 내용은 애널리틱스 측정항목, 측정기준, 필터 참조를 참고하세요.

이 변경사항은 AccessControl 정책이 X-Forwarded-For 헤더를 처리하는 방식에도 영향을 미칩니다. 더 이상 조직에서 feature.enableMultipleXForwardCheckForACL 속성을 설정하여 여러 IP 주소를 포함하도록 X-Forwarded-For 헤더를 구성하지 않아도 됩니다. 하지만 Edge for Private Cloud에는 이 설정이 여전히 필요합니다. 자세한 내용은 X-Forwarded-For HTTP 헤더 정보를 참고하세요.

109955269 API 런타임

출시 브랜치 Release_180608의 fh.properties 업데이트

80154696 관리 서버

배포 및 배포 취소 상태 응답에 각 서버의 리전 및 서버 세부정보 포함

80096158 수익 창출

수익 창출 데이터 세트에 개발자 이메일 추가

80088703 수익 창출

BigQuery의 기본 플래그 되돌리기

79980234 API 런타임

다양한 리소스 파일의 리소스 유형 추가

79979555 API 런타임

생성/읽기 작업을 할 때 상위 항목이 있는지 확인

79445195 Edge Micro

관리 API 호출 시 mTLS에 대한 마이크로게이트웨이 지원

79165169 API 런타임

Sonar: 각 타겟의 타겟 HTTP 상태 및 지연 시간 보기

79094567 수익 창출

수익 창출 요약 보고서에 개발자 이메일 열 추가

78910936 API 런타임

isSenseEnabled의 MP 종속 항목을 sense.protection으로 이전

78911890 관리 서버

새로운 기본 제공 Sense 사용자 역할: SenseOperator 및 SenseUser

78535353 API 런타임

라우터가 GCP http(s) GLB 뒤에 있는 경우 XFF 수정

78304706 API 런타임

MP는 규정 준수 관련 헤더를 추가해야 함

78297238 API 런타임

PCI 규정 준수를 위해 라우터에 HTTP 헤더 추가

77543608 수익 창출

수익 창출: '조직 프로필을 찾을 수 없음' 추가

72232364 수익 창출

각 조직의 수익 창출 환경 만들기

수정된 버그

다음은 이번 출시 버전에서 수정된 버그입니다. 이 목록은 주로 지원 티켓이 수정되었는지 확인하는 사용자를 위한 것입니다. 모든 사용자에게 자세한 정보를 제공하기 위한 목적은 아닙니다.

문제 ID 구성요소 이름 설명
113267243 API 런타임

jstack-local-copy의 jstack 정리 속도가 충분히 빠르지 않습니다.

113222974 API 런타임

MP의 디스크가 큰 system.log*.tmp 파일로 채워짐

111671525 호스팅된 대상

프록시의 HT 트리거 결함 흐름에서 비성공 응답 코드

111416863 API 런타임

조직의 프록시 하나가 180608_03 출시에서 배포되지 않음

111073791 터보

오류가 계속 발생하면 폴링 로직이 무한정 실행될 수 있음

110924838 API 런타임

R180608에서 트라이얼 포드 라우터가 가상 호스트의 업스트림을 로드하지 않음

110425503 API 런타임

nginx 새로고침으로 인해 MP 사용 가능 여부 문제가 발생함

79541171 API 런타임

x_forwarded_for_ip 분석 측정기준은 목록의 첫 번째 IP 주소만 보고합니다. 전체 목록을 보고해야 합니다.

향후 제품 업데이트를 지원하기 위한 내부 수정사항입니다.

109673863 API 런타임

사용 중인 가상 호스트가 삭제될 수 있는 버그 수정

80538530 API 런타임

클라이언트가 새 프록시 버전을 배포할 수 없음

80429941 API 런타임

CassandraRepositoryDelegate.exists()가 /apiproxies/*/maskconfigs/* 경로에 대해 항상 true를 반환함

80207872 API 런타임

시작할 때 사용하는 구성을 더 쉽게 알 수 있도록 configstore 서비스에 로깅 추가

80203732 API 런타임

DeploymentStatusService http 클라이언트에서 콘텐츠 유형을 더 잘 처리

79993247 API 런타임

Node.js 타겟에 대한 HEAD 요청이 중단됨

79944922 API 런타임

호스팅된 대상 번들 배포가 messaging.resource.UnknownResourceType으로 인해 실패함

79939838 API 런타임

품질 DB 통합을 위해 kokoro와 함께 작동하도록 build.info 파일 만들기

79939496 API 런타임

OAuth 토큰 생성 시 NumberFormatException 발생

79882402 API 런타임

JWT: VerifyJWT의 TimeAllowance가 올바르게 처리되지 않음

79876202 수익 창출

조직 삭제의 일부로 mxgroup에서 mint 범위 정리

79752674 관리 서버

개발자 ID의 개발자 이메일을 가져오는 동안 앱 및 회사 로딩 무시

79697050 API 런타임

CPS가 아닌 흐름에서 일일 롤오버 계산 버그 수정

79657368 API 런타임

API 프록시 배포 오류

79615400 수익 창출

기본적으로 bigQuery 플래그를 true로 설정

79578681 API 런타임

Cassandra 대형 KMS 키스페이스 문제

79439193 수익 창출

조직의 크레딧 금액 재설정이 예상대로 작동하지 않음

79418654 수익 창출

비동기 상세 보고서에 쉼표 구분자 추가

79221633 API 런타임

Exiting NIOThread

78200288 관리 서버

MP와 라우터를 분리한 후 라우터를 다시 연결하면 일부 배포가 실패함

78190575 API 런타임

마이크로커널 프로세스 다시 시작으로 인해 Consul 서비스 태그가 중복되지 않도록 함

78088197 API 런타임

관리 서버의 TLS 암호화 스위트 제외가 작동하지 않음

77735168 API 런타임

MP의 대용량 *.tmp 로그 파일로 인해 디스크가 가득 참

74484305 수익 창출

CPS 이전 후 -> suspended_developers GET 호출에서 새 ID가 반환되지 않음

73597605 API 런타임

SharedFlow - MessageLogging 정책이 실행되지 않음

69045657 관리 서버

LoadBalancer 타겟 또는 SSLInfo KeyStore 구성으로 개별 ServiceCallout 정책을 업로드하면 NullPointerException이 발생함

67664750 수익 창출

수익 창출 데이터를 삭제할 수 없음

67517550 관리 서버

프록시 번들 복제 시 지연 시간이 길어 배포 실패

67176875 수익 창출

개발자별 요금제로/delete-org-data가 실패함