Gateway에서 인터셉터 사용
게이트웨이에 인터셉터를 구성하면 게이트웨이를 호출할 때마다 사용자 지정 코드를 실행할 수 있습니다. 이 섹션에서는 게이트웨이에 대한 인터셉터를 구현하고 구성하는 방법에 대한 지침을 제공합니다.
개요
게이트웨이에 인터셉터를 구성하면 게이트웨이를 호출할 때마다 사용자 지정 코드를 실행할 수 있습니다. 이는 다음과 같은 사용 사례에 유용합니다.
-
도구 또는 MCP 작업에 대한 세분화된 액세스 제어 구현
-
대상 요청 및 게이트웨이 응답 변환
-
사용자 지정 권한 부여 로직 구현
게이트웨이에 구성할 수 있는 두 가지 유형의 인터셉터가 있습니다.
-
REQUEST 인터셉터 - 게이트웨이가 대상을 호출하기 전에를 실행합니다. 이는 요청 검증, 변환 또는 사용자 지정 권한 부여에 유용합니다.
-
RESPONSE 인터셉터 - 대상이 응답한 후 게이트웨이가 호출자에게 응답을 다시 보내기 전에 실행됩니다. 이는 응답 변환, 필터링 또는 사용자 지정 헤더 추가에 유용합니다.
게이트웨이에는 최대 하나의 REQUEST 인터셉터와 최대 하나의 RESPONSE 인터셉터가 구성될 수 있습니다. 동일한 게이트웨이에서 두 유형을 모두 구성할 수 있지만 동일한 유형의 인터셉터를 여러 개 가질 수는 없습니다.
현재 인터셉터는 Lambda 함수로만 구성할 수 있습니다.
보안 모범 사례
인터셉터를 구현할 때는 보안 모범 사례를 따라 민감한 정보를 보호하고 적절한 액세스 제어를 유지하는 것이 중요합니다.
-
기본적으로
passRequestHeaders필드가 true로 설정되지 않는 한 요청 헤더는 인터셉터로 전달되지 않습니다. 요청 헤더에는 인증 토큰 및 자격 증명과 같은 민감한 정보가 포함될 수 있으므로이 필드를 사용할 때는 주의해야 합니다. 인터셉터가이 민감한 정보를 로깅하지 않는지 확인해야 합니다. -
게이트웨이 실행 역할은 인터셉터로 사용 중인 특정 lambda 함수를 호출할 수 있는 권한만 갖도록 제한하고 실행 역할에 와일드카드 lambda 권한을 부여하지 않도록 제한해야 합니다.
-
인터셉터에 대해 멱등성 Lambda 함수를 구현합니다. 게이트웨이는 실패 또는 제한 시간이 발생할 경우 인터셉터 Lambda 함수에 대한 요청을 재시도할 수 있습니다. 멱등성 키를 구현하거나, 처리된 요청을 추적하거나, 동일한 입력으로 여러 번 실행될 때 일관된 결과를 생성하는 상태 비저장 작업을 설계하여 인터셉터 로직이 중복 호출을 안전하게 처리할 수 있는지 확인합니다.