05-16 05:32
Recent Posts
Recent Comments
๊ด€๋ฆฌ ๋ฉ”๋‰ด

miinsun

[Lehgo] SpringBoot Api-key ์ˆจ๊ธฐ๋Š” ๋ฐฉ๋ฒ•, Properties Maven ๋ณธ๋ฌธ

Project/2022 Lehgo

[Lehgo] SpringBoot Api-key ์ˆจ๊ธฐ๋Š” ๋ฐฉ๋ฒ•, Properties Maven

miinsun 2022. 4. 5. 15:55

๐Ÿ’ป ์‹ค์Šต ํ™˜๊ฒฝ

Framework: Spring Boot
Build: Maven

 

๐Ÿ’ฌ ์š”๊ตฌ ์‚ฌํ•ญ

Git์„ ์ด์šฉํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๊ด€๋ฆฌํ• ๋•Œ, ๋‚จ๋“ค์—๊ฒŒ ๋ณด์—ฌ์ง€๋ฉด ์•ˆ๋˜๋Š” ์ฃผ์š” ์ •๋ณด๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด DB ์•„์ด๋”” ๋น„๋ฐ€๋ฒˆํ˜ธ, APi Client Key ๋“ฑ๋“ฑ์ด ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ์ด์™€ ๊ฐ™์€ ์ •๋ณด๋“ค์„ ๋‹ค๋ฅธ ์ด๋“ค์—๊ฒŒ ๋ณด์ด์ง€ ์•Š๊ฒŒ ๊ด€๋ฆฌํ•˜๋„๋ก
PropertiesํŒŒ์ผ์„ ๋งŒ๋“ค์–ด Key๋ฅผ ๊ด€๋ฆฌ ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค.

 

๐Ÿ“Œ application-API-KEY.properties ์ƒ์„ฑ

์•„๋ž˜์™€ ๊ฐ™์ด api key๋ฅผ ๊ด€๋ฆฌ ํ•  ์ˆ˜ ์žˆ๋‹ค.

properties๋ช…๋ช… ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. application-[ํŒŒ์ผ ์ด๋ฆ„].properties

<!- Naver API ->
NAVER-URL=https://nid.naver.com/oauth2.0
NAVER-CLIENT=AAAAAAAAAAAAA
NAVER-KEY=AAAAAAAAAAAAA
NAVER-CALLBACK=http://lehgo.site:9999/oauth/naver/callback

 

๐Ÿ“Œ application.properties ์ˆ˜์ •

/resources/application.properties ํŒŒ์ผ์„ ์ˆ˜์ •ํ•œ๋‹ค. application-API-KEY.properties ํŒŒ์ผ์„ ์ธ์‹ํ•˜๋„๋กํ•œ๋‹ค.

์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์ฃผ์ž.

#API KEYS
spring.profiles.include=API-KEY

 

๐Ÿ“Œ .gitignore ์ž‘์„ฑ

.gitinoreํŒŒ์ผ์— ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค. 

# ignore properties file
application.properties
application-API-KEY.properties

 

๐Ÿ“Œ API KEY ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

.gitinoreํŒŒ์ผ์— ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

import org.springframework.beans.factory.annotation.Value;

public class GoogleOauth implements SocialOauth {
    // ๋ฐœ๊ธ‰๋ฐ›์€ API ์ •๋ณด 
    @Value("${GOOGLE-CLIENT}")
    private String GOOGLE_CLIENT_ID;
    @Value("${GOOGLE-CALLBACK}")
    private String GOOGLE_CALLBACK_URL;
    @Value("${GOOGLE-KEY}")
    private String GOOGLE_KEY;

	....
}

 

 

๐Ÿ‘พ ๊ฒฐ๊ณผ ํ™”๋ฉด

์œ„์˜ ๋ฐฉ์‹์œผ๋กœ properties ํŒŒ์ผ์„ ์ˆจ๊ธฐ๋ฉด, ์„œ๋ฒ„๋ฅผ ๋„์šด ๋‚ด ํ™˜๊ฒฝ์—์„œ๋Š” properties ํŒŒ์ผ๋“ค์ด ์ž˜ ์กด์žฌํ•˜๊ณ  ์žˆ์ง€๋งŒ

 

git ํŽ˜์ด์ง€์—์„œ๋Š” resourceํด๋”์—์„œ propertiesํŒŒ์ผ๋“ค์ด ์—†์–ด์ง„ ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

Comments