오늘은 최신 AWS Transfer Family 리소스인 AWS Transfer Family 웹 앱을 소개하고자 합니다. 인증된 사용자가 특정 Amazon Simple Storage Service(Amazon S3) 버킷에서 파일을 나열, 업로드, 다운로드, 복사 및 삭제할 수 있도록 하는 완전 관리형의 노코드 웹 앱을 만들 수 있습니다. 개발자가 아니거나 조직 내부 또는 외부 사업 부문의 사용자도 데스크톱 클라이언트, 스크립트, 스티커 메모에 적혀 있는 오래된 지침 또는 로컬 IT 지원 없이도 파일 데이터를 쉽게 교환할 수 있습니다.
웹 앱 관리자는 인증, 액세스 및 권한을 완전히 제어할 수 있으며 페이지 제목과 파비콘으로 웹 앱을 사용자 지정할 수 있습니다. 이 블로그 게시물을 작성하면서 만든 웹 앱은 다음과 같습니다.
파일을 클릭하여 다운로드하고, 폴더를 클릭하여 열고, 열을 클릭하여 정렬할 수 있습니다. 수직 타원 메뉴는 다음과 같은 추가 옵션을 제공합니다.
각 웹 앱은 최대 160GiB 크기의 파일 업로드 및 다운로드를 지원하고 대용량 파일의 경우 멀티파트 업로드를 사용합니다. 파일은 자동 재시도 및 CRC32 엔드 투 엔드 무결성 검사를 통해 TLS로 보호되는 HTTPS 연결을 통해 전송됩니다.
Transfer Family 웹 앱에 관한 모든 정보
단 몇 분 안에 웹 앱을 만드는 방법을 보여 드리겠습니다. 하지만 먼저 몇 가지 필수 기능 및 이점을 살펴보겠습니다.
보안 – Transfer Family 웹 앱은 AWS IAM Identity Center를 사용하므로 기존 SAML 또는 OIDC ID 제공업체 또는 내장된 ID 스토어를 사용할 수 있습니다. 어느 쪽이든 S3 Access Grants를 사용하여 파일을 보고, 다운로드하고, 삭제하고, 업로드하고 디렉터리를 생성할 수 있는 사용자 및 그룹을 완전하고 세밀하게 제어할 수 있습니다. 또한 조직은 AWS Transfer Family가 SOC, PCI DSS, FedRAMP, HIPAA 및 기타 프로그램을 준수함으로써 혜택을 누릴 수 있습니다.
사용자 지정 – 페이지 제목과 파비콘을 사용하여 각 Transfer Family 웹 앱을 사용자 지정할 수 있습니다. 또한 Amazon CloudFront 배포를 웹 앱 앞에 배치하고 HTTPS 액세스 및 공개 인증서를 사용하여 사용자 지정 도메인 이름으로 호스팅할 수 있습니다.
AWS 생태계 – Transfer Family 웹 앱은 AWS에서 호스팅되므로 확장 가능하고 가용성이 높습니다. 모든 파일은 내구성이 99.999999999%로 지정된 S3 버킷에 저장됩니다. S3 버전 관리, S3 서버 액세스 로깅, S3 이벤트 알림 등을 비롯한 S3 기능을 활용할 수 있습니다. 또한 Amazon EventBridge를 사용하여 복잡한 업로드 후 워크플로를 오케스트레이션할 수 있습니다.
Transfer Family 웹 앱 만들기
Transfer Family 웹 앱을 만드는 단계를 살펴보겠습니다. 각 웹 앱은 특정 AWS 리전에 존재하므로 AWS Transfer Family 콘솔을 열고 원하는 리전(이 게시물에서는 us-east-2)을 선택하고 왼쪽에서 웹 앱을 선택합니다.
그런 다음 웹 앱 생성을 클릭하여 계속 진행합니다.
필요한 경우 IAM Identity Center에 연결한 다음 Transfer Family 웹 앱이 S3 및 S3 Access Grants에 액세스할 수 있도록 허용하는 IAM 서비스 역할(세부 정보)을 생성하거나 선택합니다.
이름 태그를 추가하고 최대 동시 웹 앱 사용자 수를 설정한 후 다음을 클릭합니다.
이제 다음을 클릭하기 전에 페이지 제목과 로고(둘 다 선택 사항)를 설정하여 웹 앱을 디자인합니다.
다음 페이지에서 설정을 검토하고 생성을 클릭하여 계속 진행합니다.
이제 웹 앱이 생성되었고 거의 사용할 준비가 되었습니다(아직 권한과 사용자를 설정해야 합니다).
웹 앱과 연결된 버킷에 대해 곧 생성할 CORS 정책에 액세스 엔드포인트를 사용할 예정이므로 복사하여 저장합니다.
권한 및 사용자 설정
웹 앱(세부 정보)을 통해 액세스할 수 있는 S3 버킷에 필요한 읽기 및 쓰기 권한을 제공하는 IAM 사용자 지정 신뢰 정책을 생성합니다. 이 정책은 잠시 후에 생성할 S3 Access Grant에서 참조됩니다.
바로 진행하면서 IAM Identity Center에서 초기 사용자와 그룹의 세트를 생성합니다(나중에 더 추가할 수 있음).
다음으로 웹 앱과 동일한 리전에 S3 버킷을 생성하고 S3 Access Grant를 생성합니다. 각 S3 Access Grant는 특정 IAM Identity Center ID(사용자 또는 그룹)가 읽기 및/또는 쓰기를 위해 특정 범위(버킷 또는 버킷의 접두사가 붙은 부분)에 액세스할 수 있도록 허용합니다.
또한 웹 앱이 브라우저에서 액세스할 수 있도록 CORS 정책(세부 정보)을 버킷에 연결해야 합니다.
마지막 단계는 사용자를 새 웹 앱과 연결하는 것입니다. AWS Transfer Family 웹 앱 페이지로 돌아가서 해당 앱을 찾은 다음 사용자 및 그룹 할당을 클릭합니다.
디렉터리에 새 사용자를 추가하거나 기존 사용자를 선택할 수 있습니다.
제 자신을 추가하여 시작하겠습니다.
할당되면 액세스 엔드포인트(위 참조)를 사용자와 공유할 수 있으며 사용자(이 경우에는 저)가 웹 앱에 로그인할 수 있습니다.
웹 앱 엔드포인트와 액세스 엔드포인트는 기본적으로 동일합니다. 웹 앱용 CloudFront 배포를 설정하면 액세스 엔드포인트에 엔드포인트의 URL이 반영됩니다.
설정 프로세스를 통해 빠른 경로를 보여 드렸습니다. 이미 아시겠지만 개인 및 그룹 수준에서 읽기 및 쓰기 액세스를 제어할 수 있는 옵션이 많이 있습니다. 프로덕션 웹 앱을 설정하기 전에 이러한 옵션을 모두 살펴보고 완전히 이해해야 합니다!
알아야 할 사항
S3 Transfer Family 웹 앱에 대해 알아야 할 몇 가지 사항은 다음과 같습니다.
리전 – 9개 AWS 리전에서 웹 앱을 생성할 수 있습니다. 최신 목록은 웹 앱 설명서를 참조하세요.
요금 – 요금은 시간당 웹 앱 기준입니다.
API 및 CLI – 웹 앱 생성, 웹 앱 설명 및 기타 AWS Transfer Family 작업을 사용하여 프로그래밍 방식으로 웹 앱을 생성하고 관리할 수 있습니다.
Storage Browser for S3 – Transfer Family 웹 앱은 Storage Browser for Amazon S3를 사용하여 구축되었으며 완전 관리형 오퍼링에서 동일한 최종 사용자 기능을 제공합니다.
시작하기 – Transfer Family 콘솔에서 Transfer Family 웹 앱을 시작할 수 있습니다.
— Jeff;