gitignore로 보안정보 숨기기

2024. 6. 30. 11:20TIL

✔오늘 배운 중요한 🔑 point

  • .gitignore에 등록한 파일이 이미 커밋이 된 경우에는  git rm --cached ****을 통해 해결할 수 있다 

🎯 오늘 배운 내용

 

@Bean
fun redisConnectionFactory(): RedisConnectionFactory {

    val host = "redis-13975.c290.ap-northeast-1-2.ec2.redns.redis-cloud.com"
    val port = 13975


    val password = "****"

    return LettuceConnectionFactory(host, port).apply {
        setPassword(password)
    }
}

github에 코드를 올릴때 보안상의 이유로 application.yml에  보안정보를 설정하고 application.yml 파일을 .gitignore에 등록하여 보안코드가 공유되지 않도록 해야한다

 

@Configuration
@EnableRedisRepositories
class RedisConfig {

    @Value("\${spring.data.redis.host}")
    private lateinit var redisHost: String

    @Value("\${spring.data.redis.port}")
    private var redisPort: Int = 0

    @Value("\${spring.data.redis.password}")
    private lateinit var redisPassword: String

    @Bean
    fun redisConnectionFactory(): RedisConnectionFactory {
        return LettuceConnectionFactory(redisHost, redisPort).apply {
            setPassword(redisPassword)
        }
    }
}

따라서 이런식으로 깃허브에 공유될 파일에는 보안정보가 포함이 되지 않게 설정하고 gitigonre로 application.yml 파일을 등록하자.

 

.gitignore

application.yml

 

이미 application.yml이 올라가있다면

git rm application.yml
git commit -m "깃 추적에서 application.yml 파일 제거하기"
git push origin <master>

해당 코드를 사용하면 된다

 

🤔 어떻게 활용할까?

공유되서는 안되는 보안코드는 내가 사용하고 있는 툴의 설정에 숨기거나 .gitignore을 통해서 공유가 되지 않도록 하자

📓 오늘의 한줄

"The worst sin towards our fellow creatures is not to hate them, but to be indifferent to them: that's the essence of inhumanity."

- George Bernard Shaw -