작업 흐름
aws 설정 작업
버킷의 권한 → public 허용 스크립트 삽입
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicReadForBucket",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::your-bucket-name/*"
}
]
}
Spring 서버 설정
의존성 추가
s3client 빈 객체 생성
@Configuration
public class AwsS3Config {
@Value("${cloud.aws.credentials.access-key}")
private String accessKey;
@Value("${cloud.aws.credentials.secret-key}")
private String secretKey;
@Value("${cloud.aws.region}")
private String region;
@Bean
public S3Client client(){
AwsBasicCredentials awsBasicCredentials = AwsBasicCredentials.create(accessKey, secretKey);
return S3Client.builder()
.region(Region.of(region))
.credentialsProvider(StaticCredentialsProvider.create(awsBasicCredentials))
.build();
}
}
파일 업로드 로직
프론트엔드 연동