HTTPS 적용하기(S3)
S3 적용하기
1. IAM 생성
사용자 생성 버튼 클릭
1page
2 page
🔽 S3, CloudFront 를 사용할 것이므로 AmazonS3FullAccess
, CloudFrontFullAccess
권한 추가
🔽 액세스 키 발급
액세스 키, 시크릿 키, .csv 파일 저장 ( 기록해 둔다. )
🔽 액세스 키 ID, 비밀 액세스 키 github에 적용
S3 버킷 생성
일반 구성의 버킷 이름 + 모든 퍼블릭 액세스 차단 해제 말고 수정한게 없다.
- 객체 소유권 : ACL 비활성화됨(권장)
- 이 버킷의 퍼블릭 액세스 차단 설정 : 모든 퍼블릭 액세스 차단 해제하기!!
- 버킷 버전 관리 : 비활성화
- 기본 암호화
- 기본 암호화 : Amazon S3 관리형 키(SSE-S3)를 사용한 서버 측 암호화
- 버킷 키 : 활성화
정적 웹 호스팅
S3 버킷 생성 후 S3 버킷의 속성 탭 제일 하단에 있는 정적 웹 호스팅을 편집한다.
Amazon S3 > 버킷 > ${버킷 이름} > 속성 탭
인덱스 문서와 오류 문서는 project에 맞게 설정하면 된다. (ex. index.html
, error.html
)
S3 CORS(Cross-origin 리소스 공유)
Amazon S3 > 버킷 > ${버킷 이름} > 권한 탭
제일 하단으로 내리면 CORS(Cross-origin 리소스 공유)가 보인다.
편집을 누르고 아래를 붙여넣으면 된다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"HEAD"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": [
"x-amz-server-side-encryption",
"x-amz-request-id",
"x-amz-id-2"
],
"MaxAgeSeconds": 3000
}
]
S3 버킷 정책 편집
- S3 > 버킷 > 권한 > 버킷 정책 편집 클릭
- 버킷 ARN 복사 후 정책 생성기 버튼 클릭
- Select Type of Policy : S3 Bucket Policy
- Principal : *
- Actions : GetObject
- Amazon Resource Name (ARN) : {복사해온 ARN} + /*
- Add Statement 클릭
Add Statement 클릭 후 나온 코드 정책에 적용한다.(Generate Policy 클릭)
S3 업로드 하기
css, js, templates로 폴더를 만들어서 각각 업로드 해줬다.
중요한 것은 css, js, templates에 ACL을 사용하여 퍼블릭으로 설정을 해야한다.
아무 html이나 들어가서 url 입력하면 성공적으로 html이 띄워지는 것을 볼 수 있다.