
在 go 中使用 viper 配置敏感信息
使用 viper 库配置配置文件时,有时我们不想将敏感信息(如密码)存储在主配置文件中。对于此类情况,viper 提供了一种分离配置数据的方法。
解决方案:
您可以创建单独的文件来存储敏感信息,例如 "secrets.yml":
secret_key: password
然后,在您的 go 代码中,使用 viper.new() 创建一个新的 viper 实例并设置单独的文件路径:
import (
"github.com/spf13/viper"
)
func main() {
// 创建一个新的 Viper 实例
v := viper.New()
// 设置 secrets.yml 文件路径
v.SetConfigFile("secrets.yml")
// 读取 secrets.yml 中的配置
if err := v.ReadInConfig(); err != nil {
panic(err)
}
// 访问配置
secretKey := v.GetString("secret_key")
}此外,您可以对敏感值进行加密,以进一步保护数据安全。










