2016-10-07 6 views
5

API API 엔드 포인트 중 하나의 메소드 요청에서 '사용자 정의 인증'으로 구성한 람다 함수를 작성했습니다. AWS API 게이트웨이의 '테스트'기능을 사용할 때 로그 출력에 람다 함수의 출력이 표시되지 않습니다.AWS API 게이트웨이 Cutom 인증 기관이 실행되지 않음

API를 '배포했습니다'. 내가 구성된 사용자 지정 도메인 이름을 사용하여 API 엔드 포인트를 쳤을 때 나는 그러나

{"message":"Unauthorized"}

를 얻을 수 있기 때문에이 엔드 포인트에서 '사용자 정의 인증'을 제거하고 같은 충돌하는 경우

그러나 뭔가 일이 일어나고입니다 끝점, 그것은 작동합니다!

나는 CloudWatch에서 로깅을 사용하도록 설정하고이 람다 함수가 호출하지만 뭔가 일이되어야합니다, 거기에 apiGateway 로그 그룹 아래에 아무것도 중 하나 없지만, 난 그냥 그것을 볼 수없는 것을 보여주기 위해 보인다.

아무도 내가 이것을 디버깅하는 방향으로 나를 가리킬 수 있습니까?

답변

6
  1. API 게이트웨이 테스트 호출 기능은 모든 권한 부여 프로그램을 호출하지 않으며 통합을 직접 호출합니다.
  2. API 게이트웨이 콘솔의 "Authorizers"탭에서 사용 가능한 Authorizer Test Invoke를 사용하여 람다 인증 프로그램을 독립적으로 테스트 할 수 있습니다.
  3. 람다 함수는 주체 식별자 (principalId)와 정책 문의 목록이 포함 된 정책 문서가 포함 된 응답을 반환해야합니다.

자세한 내용은 here입니다.

리미 샤.

+0

Ritisha를 명확히 해주셔서 감사합니다. API 게이트웨이에서 'Test GUI'가 맞춤형 인증 스크립트를 호출하지 않는다는 사실은 나를 혼란스럽게 만들었습니다! 클라우드 워치 로그의 정책 역할이 잘못되었음을 알았습니다. 이전에 작성한 람다 함수에 연결되어 있었고, 람다 함수를 전환했을 때 정책을 수정해야했습니다. 이제 CloudWatch 로그에서 내 호출을 볼 수 있습니다 :-) – GreensterRox

+0

"Authorization : Bearer your_token"을 헤더에 넣어야합니다. 그렇지 않으면 권한 부여자가 호출되지 않습니다. – skunkwerk

관련 문제