API 키를 사용하여 메서드를 직접적으로 호출 - Amazon API Gateway

API 키를 사용하여 메서드를 직접적으로 호출

선택하는 API 키 원본 유형에 따라 다음 절차 중 하나를 사용하여 메서드 호출에서 헤더로 제공된 API 키 또는 권한 부여자가 반환한 API 키를 사용합니다.

헤더로 제공된 API 키를 사용하려면
  1. 원하는 API 메서드를 사용하여 API를 생성한 다음, API를 스테이지에 배포합니다.

  2. 새 사용량 계획을 만들거나 기존 사용량 계획을 선택합니다. 사용량 계획에 배포한 API 단계를 추가합니다. 사용량 계획에 API 키를 연결하거나 계획에서 기존 API 키를 선택합니다. 선택한 API 키 값을 적어 둡니다.

  3. API 키를 요구하도록 API 메서드를 설정합니다.

  4. 동일한 단계에 API를 다시 배포합니다. 새 단계에 API를 배포하는 경우 새 API 단계를 연결하도록 사용량 계획을 업데이트해야 합니다.

  5. API 키를 사용하여 API를 직접적으로 호출합니다. 다음 예제 curl 명령은 API 키를 사용하여 API prod 스테이지의 getUsers 리소스에서 GET 메서드를 간접적으로 호출합니다.

    curl -H "X-API-Key: abcd1234" 'https://b123abcde4.execute-api.us-west-2.amazonaws.com/prod/getUsers'

이제 클라이언트가 x-api-key 헤더에 선택한 API 키를 헤더 값으로 제공하여 API 메서드를 호출할 수 있습니다. 직접적인 호출은 다음과 같습니다.

권한 부여자가 제공한 API 키를 사용하려면
  1. 원하는 API 메서드를 사용하여 API를 생성한 다음, API를 스테이지에 배포합니다.

  2. 새 사용량 계획을 만들거나 기존 사용량 계획을 선택합니다. 사용량 계획에 배포한 API 단계를 추가합니다. 사용량 계획에 API 키를 연결하거나 계획에서 기존 API 키를 선택합니다. 선택한 API 키 값을 적어 둡니다.

  3. 토큰 기반 Lambda 권한 부여자를 생성합니다. 권한 부여 응답의 루트 수준 속성으로 usageIdentifierKey:{api-key}를 포함시킵니다. 토큰 기반 권한 부여자를 만드는 방법에 대한 지침은 TOKEN 권한 부여자 Lambda 함수 예제을 참조합니다.

  4. API 키를 요구하도록 API 메서드를 설정하고, 메서드에서 Lambda 권한 부여자를 활성화합니다.

  5. 동일한 단계에 API를 다시 배포합니다. 새 단계에 API를 배포하는 경우 새 API 단계를 연결하도록 사용량 계획을 업데이트해야 합니다.

이제 클라이언트가 API 키를 명시적으로 제공하지 않고도 API 키 요구 메서드를 호출할 수 있습니다. 권한 부여자가 반환한 API 키가 자동으로 사용됩니다.