AWS 자격 증명 만들기
Security Credentials 설정하기
AWS SDK를 이용하여 파일을 업로드 할 때 업로드 권한을 얻기 위해 Security Credentials을 만들어야 합니다.
전체적인 흐름은 사용자를 생성하고, 권한을 설정하고 Access key와 Secret key를 발급받도록 되어있습니다.
1 내 보안 자격 증명(My Security Credentials) 을 눌러 Security Credentials 설정하는 부분으로 이동합니다.
2 IAM 사용자 시작하기(Get Started with IAM Users) 버튼을 눌러 다음으로 이동합니다.
3 사용자 추가(Add User) 버튼을 클릭해서 유저를 생성합니다.
4 사용자 이름(User name)을 지정하고 프로그래밍 방식 액세스(Programmatic access) 를 선택한 뒤 다음 버튼을 누르기 전에 아래쪽으로 화면을 스크롤하면 권한경계설정 항목이 나옵니다. 여기서 권한 경계없이 생성을 선택하고 다음 버튼을 클릭합니다.
5 기존 정책 직접 연결을 선택하고 아래와 같이 S3라고 검색하면 관련 정책 목록이 출력되는데 여기서 우리는 AmazonS3FullAccess를 선택합니다. 그리고 다음으로 넘어갑니다.
6 검토(Review)를 통해 올바른 설정을 했는지 확인하고 사용자 만들기(Create user)로 생성합니다.
7 생성된 사용자의 액세스 키 ID(Access key ID)와 비밀 액세스 키(Secret access key)를 확인 할 수 있습니다. 비밀액세스 키는 "표시"를 클릭하면 보여집니다.
AWS S3에 파일을 업로드 할 때 여기에 보여지는 액세스 키 ID와 비밀 액세스 키를 사용해야합니다. 이렇게 생성된 사용자는 언제든지 "내 보안 자격 증명" 메뉴를 통해 확인이 가능합니다.
[Java] 랜덤 숫자 구하기 (0) | 2019.01.27 |
---|---|
[Java] 숫자 판별하기 (0) | 2019.01.27 |
AWS S3 버킷에 파일 업로드하기 (자바) (0) | 2018.08.17 |
[Java] Heap Memory Check (자바 힙메모리 사용량 측정) (0) | 2018.07.28 |
[Java/자바] 텍스트 파일 내용 읽어서 출력하기 (0) | 2016.12.04 |
AWS SDK Java jar 파일 다운 받기
AWS-SDK for Java - https://aws.amazon.com/ko/sdk-for-java/
위 링크를 따라 들어가면 우측 상단에 SDK다운로드 또는 이클립스용 툴킷을 다운로드 받을 수 있는 버튼이 있습니다. 저는 메이븐을 사용할건데 직접 다운로드 받거나 툴킷을 써보고 싶으신 분들은 위 링크를 이용해주세요.
maven을 이용한다면
1 2 3 4 5 | <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk</artifactId> <version>1.11.386</version> </dependency> |
이 글이 포스팅 되는 시점에 최신버전은 1.11.388입니다. minor 버전이 하루가 다르게 증가하고있어요 ㅎ
AWS s3 파일 업로드 하기(AWS S3 Upload for java )
실제로 S3에 업로드를 하기 위해서는 S3에 권한이 필요합니다. 이 권한을 얻기 위해서는 ACCESS_KEY, SECRET_KEY 를 생성해야 하는데 이는 아래 링크를 참고해주세요.
# Access Key, Secret Key 생성방법 - http://keichee.tistory.com/298
사용방법은 간단합니다.
아래처럼 파일을 전달받아 아마존 S3에 accesskey와 secretkey를 이용하여 권한을 얻고 파일을 업로드 하면됩니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | public class AWSService { private static final String BUCKET_NAME = "bucket_name"; private static final String ACCESS_KEY = "ACCESS_KEY"; private static final String SECRET_KEY = "SECRET_KEY"; private AmazonS3 amazonS3; public AWSService() { AWSCredentials awsCredentials = new BasicAWSCredentials(ACCESS_KEY, SECRET_KEY); amazonS3 = new AmazonS3Client(awsCredentials); } public void uploadFile(File file) { if (amazonS3 != null) { try { PutObjectRequest putObjectRequest = new PutObjectRequest(BUCKET_NAME + "/sub_dir_name"/*sub directory*/, file.getName(), file); putObjectRequest.setCannedAcl(CannedAccessControlList.PublicRead); // file permission amazonS3.putObject(putObjectRequest); // upload file } catch (AmazonServiceException ase) { ase.printStackTrace(); } finally { amazonS3 = null; } } } } |
[Java] 숫자 판별하기 (0) | 2019.01.27 |
---|---|
AWS S3 Security Credentials 만들기 (0) | 2018.08.17 |
[Java] Heap Memory Check (자바 힙메모리 사용량 측정) (0) | 2018.07.28 |
[Java/자바] 텍스트 파일 내용 읽어서 출력하기 (0) | 2016.12.04 |
프로젝트 현재 경로 얻기 ( Getting current working directory ) (0) | 2016.06.15 |