Amazon API Gateway
개발자 안내서

API Gateway의 프라이빗 API에 대한 VPC 종단점 정책 사용

API Gateway가 인터페이스 VPC 종단점을 사용하도록 구성하여 프라이빗 API의 보안을 향상시킬 수 있습니다. 인터페이스 엔드포인트는 사설 IP 주소를 사용하여 비공개로 AWS 서비스에 액세스할 수 있게 해주는 AWS PrivateLink 기술을 통해 제공됩니다. VPC 종단점에 대한 자세한 내용은 인터페이스 엔드포인트 생성을 참조하십시오.

VPC 종단점 정책은 인터페이스 VPC 종단점에 연결하여 엔드포인트에 대한 액세스를 제어할 수 있는 IAM 리소스 정책입니다. 자세한 정보는 VPC 종단점을 통해 서비스에 대한 액세스 제어를 참조하십시오. 엔드포인트 정책을 사용하여 내부 네트워크에서 프라이빗 API에 액세스하는 트래픽을 제한할 수 있습니다. VPC 종단점을 통해 액세스할 수 있는 특정 프라이빗 API에 대한 액세스를 허용 또는 거부하도록 선택할 수 있습니다.

VPC 종단점 정책은 API Gateway 리소스 정책과 함께 사용할 수 있습니다. 리소스 정책에서는 해당 리소스에 액세스할 수 있는 보안 주체를 지정합니다. 엔드포인트 정책은 VPC 종단점을 통해 호출할 수 있는 프라이빗 API를 지정합니다. 리소스 정책에 대한 자세한 내용은 Amazon API Gateway 리소스 정책을 사용하여 API에 대한 액세스를 제어 단원을 참조하십시오.

VPC 종단점 정책 예제

Amazon API Gateway에 대한 Amazon Virtual Private Cloud엔드포인트의 정책을 생성할 수 있습니다. 이 정책에서 다음을 지정할 수 있습니다.

  • 작업을 수행할 수 있는 보안 주체.

  • 수행할 수 있는 작업입니다.

  • 수행되는 작업을 가질 수 있는 리소스입니다.

VPC 종단점에 정책을 첨부하려면 VPC 콘솔을 사용해야 합니다. 자세한 정보는 VPC 종단점을 통해 서비스에 대한 액세스 제어를 참조하십시오.

예제 1: 두 API에 대한 액세스 권한을 부여하는 VPC 종단점 정책

다음 예제 정책은 정책이 첨부된 VPC 종단점을 통해 두 개의 특정 API로만 액세스 권한을 부여합니다.

{ "Statement": [ { "Principal": "*", "Action": [ "execute-api:Invoke" ], "Effect": "Allow", "Resource": [ "arn:aws:execute-api:us-east-1:123412341234:a1b2c3d4e5/*", "arn:aws:execute-api:us-east-1:123412341234:aaaaa11111/*" ] } ] }

예제 2: GET 메서드에 대한 액세스 권한을 부여하는 VPC 종단점 정책

다음 예제 정책은 해당 정책이 연결된 VPC 종단점을 통해 특정 API에 대한 GET 메서드에 대한 액세스 권한을 사용자에게 부여합니다.

{ "Statement": [ { "Principal": "*", "Action": [ "execute-api:Invoke" ], "Effect": "Allow", "Resource": [ "arn:aws:execute-api:us-east-1:123412341234:a1b2c3d4e5/stageName/GET/*" ] } ] }

예제 3: 특정 API에 특정 사용자 액세스 권한을 부여하는 VPC 종단점 정책

다음 예제 정책은 정책이 연결된 VPC 종단점을 통한 특정 API에 대한 특정 사용자 액세스 권한을 부여합니다.

{ "Statement": [ { "Principal": { "AWS": [ "arn:aws:iam::123412341234:user/MyUser" ] }, "Action": [ "execute-api:Invoke" ], "Effect": "Allow", "Resource": [ "arn:aws:execute-api:us-east-1:123412341234:a1b2c3d4e5/*" ] } ] }