본문 바로가기

오류일기

Google Cloud Storage + Spring Boot 401 Unauthorized

프로젝트를 진행하며 Google Cloud Storage 줄여서 GCS에 이미지를 업로드해야하는 로직을 작성해야 했습니다. 그리고 다행히도 참고할만한 노션 정리글을 발견하여 따라하였으나... 401 에러가 반환되었습니다..

ㅠㅠ..

현재 저는 GCS에서 액세스 키를 json 형식으로 받아서 yaml에서 이를 읽어들이는 방식으로 Storage 빈을 생성했습니다.

그렇기에 방법을 다음과 같은 방식으로 직접 설정해줘가며 코드를 수정했습니다.

 

@Configuration
public class GoogleCloudStorageConfig {

    @Bean
    public Storage storage() throws IOException {

        ClassPathResource resource = new ClassPathResource("액세스 키가 담긴 파일.json");
        GoogleCredentials credentials = GoogleCredentials.fromStream(resource.getInputStream());
        String projectId = "프로젝트 Id";
        return StorageOptions.newBuilder()
                .setProjectId(projectId)
                .setCredentials(credentials)
                .build()
                .getService();
    }
}

그 결과..

 

성공!

만약 yaml파일에 설정한 무언가 잘 안된다면 직접 Bean으로 등록해보는 것도 하나의 방법이라 생각합니다!

 

아래는 제가 참고한 글입니다!

https://choo.oopy.io/35bffd94-7a41-4cfa-812c-b8aaf148604a

 

Springboot에서 GCS로 이미지 파일 업로드 총정리(multipart/form-data)(Google Cloud Storage)(GCP)

1. 서론

choo.oopy.io