AWS/실습 기록

IAM을 이용하여 AWS SDK 활용한 S3 파일 업로드하기

daeunnniii 2021. 9. 16. 21:44
728x90
반응형

IAM이란?

IAMIdentity and Access Management의 약자로, AWS의 리소스에 대한 개별적으로 접근제어와 권한을 가지도록 계정 또는 그룹을 생성, 관리하는 서비스이다. 어떤 IAM 계정은 EC2 서비스만 접근할 수 있도록 권한을 부여하고, 다른 IAM 계정은 S3 서비스만 접근할 수 있도록 권한을 나눌 수 있다.

IAM 계정이 없다면 AWS 계정 자체가 모든 서비스에 대한 권한이 있기 때문에 보안상 취약하다. 따라서 IAM 계정을 생성해서 각 IAM 계정에 필요한 권한만 갖도록 설정할 수 있다. 또한 IAM 계정은 access key를 개별적으로 관리할 수 있기 때문에 보안성이 높아진다.

1. IAM 사용자 생성

사용자 추가

먼저 IAM으로 들어간다. 그리고 "사용자"로 들어가 사용자 추가 버튼을 누른다.

 

사용자 이름, 엑세스 유형 중 프로그래밍 방식 엑세스를 체크하고 다음 단계로 넘어간다.

프로그래밍 방식 엑세스는 개발 언어와 연계해서 사용하는 방식이고, AWS Management Console 엑세스는 해당계정을 AWS 콘솔에서 로그인해서 사용하게 하는 방식이다. 우리는 개발 언어와 연계해서 사용하는 것이 목적이기 때문에 프로그래밍 방식 엑세스만 체크한다.

권한 부여

생성하는 사용자에게 권한을 부여한다. 그룹에 추가하는 방법, 기존 사용자 권한 복사, 기존 정책 직접 연결 하는 방법이 있다. 지금은 정의되어 있는 정책에 직접 연결하는 방법을 사용할 것이다. S3를 위한 사용자이기 때문에 AmazonS3FullAccess 권한을 부여한다.

기존 정책들의 경우, 필요할 때마다 그때그때 정책을 찾아서 권한을 부여하면 된다.

이제 사용자가 성공적으로 추가되었다. 아래 화면에서 엑세스 키 ID, 비밀 엑세스 키를 복사해놓는것이 중요하다!! (절때 외부에 노출이 되면 안된다!!)

2. AWS SDK 설치 및 설정

SDK는 Software Development Kit의 약자로 프로그래밍을 돕는 라이브러리이다. AWS SDK를 이용하면 개발과 연동해서 AWS를 사용할 수 있게된다.

 

SDK 다운로드(윈도우): https://awscli.amazonaws.com/AWSCLIV2.msi

SDK 다운로드(MAC): https://awscli.amazonaws.com/AWSCLIV2.pkg

 

설치가 완료되었으면 cmd 창에 aws --version을 입력하여 잘 인식되는지 확인한다.

cmd 창에 aws configure을 입력하면 SDK 설정을 완료할 수 있다.

aws configure

 

3. SDK를 이용한 S3 파일업로드

이제 SDK 설정을 완료했으므로 컴퓨터에 있는 파일을 S3에 업로드 해볼 것이다.

aws s3 cp {파일명} s3://{버킷이름} --acl public-read

업로드할 파일이 있는 경로로 가서 위와 같이 파일명을 입력하고 버킷 이름을 입력하면 해당 S3 버킷에 파일을 업로드할 수 있다. 여기서 --acl public-read는 파일을 퍼블릭하게 공개하여 웹사이트에서 볼 수 있도록 설정하는 것이다.

 

 

 

 

 

참고: 스파르타코딩클럽 핵심쏙쏙 AWS

728x90
반응형