내용으로 건너뛰기

API Gateway REST API에 대한 IAM 인증을 활성화하려면 어떻게 해야 합니까?

3분 분량
0

Amazon API Gateway REST API에 대한 AWS Identity and Access Management(AWS IAM) 인증을 활성화하려고 합니다.

간략한 설명

API Gateway 콘솔을 사용하여 API Gateway 메서드에 대한 IAM 인증을 활성화합니다. 그런 다음 ID 기반 및 리소스 기반 정책을 사용하여 API 권한을 지정합니다.

자세한 내용은 API Gateway의 REST API에 대한 액세스 제어 및 관리를 참조하십시오.

해결 방법

REST API에 대한 IAM 인증 활성화

다음 단계를 완료하십시오.

  1. API Gateway 콘솔을 엽니다.
  2. 탐색 창에서 API를 선택한 다음 API를 선택합니다.
  3. 리소스에서 IAM 인증을 활성화하려는 API Gateway 메서드(예: GET 또는 POST)를 선택합니다.
  4. 메서드 실행에서 메서드 요청을 선택합니다.
  5. 설정권한 부여에서 편집을 선택합니다.
  6. 드롭다운 목록에서 AWS_IAM을 선택한 후 업데이트를 선택합니다.
  7. IAM 인증을 활성화할 각 API Gateway 메서드에 대해 2~4단계를 반복합니다.
  8. API를 배포합니다.
  9. 단계 편집기에서 인증 설정을 테스트할 수 있도록 간접 호출 URL을 기록해 둡니다.

자세한 내용은 API Gateway 콘솔을 사용하여 메서드 설정API의 간접 호출 URL 가져오기를 참조하십시오.

IAM 사용자 그룹에 API 권한 부여

다음 단계를 완료하십시오.

  1. API 사용자에게 부여할 권한을 결정합니다. 자세한 내용은 IAM 권한으로 REST API에 대한 액세스 제어를 참조하십시오.
  2. 필요한 권한을 포함하는 IAM 정책을 생성합니다. 인증 설정을 테스트하려면 간접 호출 권한을 허용해야 합니다. 예제는 다음 문서를 참조하십시오.
    API 간접 호출을 위한 액세스 제어
    API 실행 권한에 대한 IAM 정책 예제
    Amazon API Gateway ID 기반 정책 예제
  3. 기존 IAM 그룹에 정책을 연결합니다. 또는 새 IAM 그룹을 생성할 때 정책을 연결합니다.

참고: IAM 그룹 수준에서 액세스 권한을 부여하는 것이 가장 좋습니다.

(선택 사항) API Gateway 리소스 정책 구성

API Gateway 리소스 기반 정책과 IAM 정책을 함께 사용하여 API에 대한 액세스를 관리할 수 있습니다. 자세한 내용은 IAM 인증 및 리소스 정책ID 기반 정책 및 리소스 기반 정책을 참조하십시오.

중요: 한 정책에서는 API에 대한 액세스를 거부하고 다른 정책에서는 액세스를 허용하면 액세스가 거부됩니다. 자세한 내용은 정책 평가 결과 테이블을 참조하십시오.

인증 설정 테스트 요청 전송

Postman 애플리케이션을 사용하여 API 리소스에 요청을 보냅니다. IAM 인증을 활성화한 메서드와 동일한 API Gateway 메서드를 사용하십시오.

요청 URL에 API의 간접 호출 URL을 입력합니다. 특정 API 리소스의 메서드에서 IAM 인증을 활성화한 경우 간접 호출 URL 끝에 리소스 이름을 추가합니다. 예를 들어 https://restApiId.execute-api.region.amazonaws.com/stageName/resourceName을 입력합니다.

인증된 요청은 "200 OK" 응답 코드를 반환합니다. 무단 요청은 "Missing Authentication Token" 메시지와 "403 Forbidden" 응답 코드를 반환합니다.

참고: Signature Version 4 서명 프로세스 도구를 사용하여 API Gateway로 전송되는 요청을 수동으로 인증할 수도 있습니다.

관련 정보

API Gateway 리소스 정책이 권한 부여 워크플로에 미치는 영향

IAM 사용자의 액세스 키 관리