콘텐츠로 이동하기
서버리스

Google App Engine 앱의 보안을 강화하는 새로운 기능

2022년 1월 24일
https://storage.googleapis.com/gweb-cloudblog-publish/images/Google_Blog_Serverless_-_04.max-2200x2200.max-2200x2200.png
Wesley Chun

Developer Advocate

Matthew Larkin

Product Manager, Google Cloud

Google Cloud 사용해 보기

$300의 무료 크레딧과 20개 이상의 항상 무료인 제품으로 Google Cloud 사용을 시작해보세요.

무료 체험

* 본 아티클의 원문은 2021년 8월 27일 Google Cloud 블로그(영문)에 게재되었습니다.


2008년 출시된 이후 Google App Engine은 앱 개발자가 기본 인프라를 관리할 필요 없이 코드 작성에 집중할 수 있도록 사용 편의성에 중점을 두었습니다. 지난 몇 년간 인그레스 제어, App Engine 방화벽, IAP(Identity-Aware Proxy) 지원 등 앱 보안을 강화하는 데 도움이 되는 다양한 기능을 추가했습니다. 이번에는 이미 플랫폼에서 제공하던 보안 기능을 한층 더 확장하는 여러 새로운 기능을 도입합니다.

  1. 서버리스 VPC 액세스의 이그레스 제어
  2. 사용자 관리 서비스 계정

이그레스 제어

완전 관리형 플랫폼인 App Engine은 앱의 아웃바운드 트래픽을 위한 IP 주소 풀을 제공합니다. 네트워킹 세부정보를 관리할 필요가 없다는 점에서 대부분의 고객에게 이상적이지만, 발신 요청을 보다 세부적으로 제어해야 하는 고객도 있습니다.

App Engine의 새로운 이그레스 제어 기능은 Google Cloud VPC 서비스, 특히 서버리스 VPC 액세스 기능을 활용합니다. 사용자는 서버리스 VPC 액세스를 통해 커넥터를 구성하여 App Engine 앱에서 VPC 네트워크로 요청을 라우팅할 수 있습니다. 이그레스 제어를 사용하면 고객이 VPC 커넥터를 사용할 트래픽을 더욱 세부적으로 제어할 수 있습니다.

사용자는 두 가지 옵션 중에서 선택할 수 있습니다. 기본 옵션인 '비공개 범위만'의 경우 VPC 네트워크의 비공개 IP에 대한 모든 HTTP 요청이 VPC 커넥터에 전송되고, 나아가 VPC 네트워크로 전송되며 공개 IP에 대한 모든 HTTP 요청은 인터넷으로 직접 전송됩니다. 다른 옵션인 '모든 트래픽'에서는 모든 발신 HTTP 요청을 VPC 커넥터를 통해 VPC 네트워크로 라우팅합니다. 이후 해당 요청에 VPC 방화벽 규칙 및 기타 VPC 설정이 적용됩니다.

이그레스 제어로 지원되는 주요 사용 사례는 App Engine http 요청을 위한 고정 발신 IP 주소를 만드는 경우입니다. 여러 App Engine 고객들이 최종 고객 네트워크에 연결해야 하는 SaaS 서비스를 제공합니다. 대다수의 최종 고객은 특정 출처 IP의 트래픽에만 방화벽을 여는 것을 선호합니다. 이그레스 제어('모든 트래픽'으로 설정)를 사용하면 고객이 서버리스 VPC 액세스와 Cloud NAT를 사용하여 안정적인 고정 IP 주소를 구성할 수 있습니다.

사용자 관리 서비스 계정

현재 App Engine(표준 가변형 모두)에는 App Engine 앱 대신 다른 GCP 서비스와 상호작용하는 데 사용되는 기본 서비스 계정이 있습니다. App Engine 기본 서비스 계정은 초기 App Engine 앱 생성 프로세스 중에 설정되며 고객은 서비스 계정에 부여된 권한을 관리할 수 있습니다. 하지만 지금까지는 기본 서비스 계정이 앱의 모든 서비스에서 사용되었습니다. 즉, 특정 서비스에 실제로 필요한 권한과 상관없이 일반적인 권한 집합을 모든 서비스가 공유합니다.

새로 도입된 사용자 관리 서비스 계정을 사용하면 고객이 (배포 시점에 또는 App Engine Admin API를 통해) 앱의 버전별로 서로 다른 서비스 계정을 지정할 수 있습니다. 주요 이점 중 하나는 앱의 모든 서비스에 필요한 권한이 부여된 단일 공유 서비스 계정을 사용하는 대신 '최소 권한' 권장사항을 따라 각 서비스를 관련 태스크 수행에 필요한 권한으로만 제한할 수 있다는 것입니다. 버전별 서비스 계정의 사용 여부는 전적으로 선택의 문제입니다. 서비스 계정을 지정하지 않으면 App Engine 기본 서비스 계정이 사용됩니다.

로드 중...

다음 단계

새로운 이그레스 제어를 자세히 알아보려면 문서를 참고하세요. 이 기능을 처음 사용하는 경우 서버리스 VPC 액세스를 구성하는 방법을 다룬 이 페이지도 확인하세요. 자체 서비스 계정 맞춤설정에 대한 정보도 문서에서 확인할 수 있습니다.

게시 위치