【发布时间】:2021-01-01 23:39:52
【问题描述】:
我正在用 Golang 构建一个 web api。而且我想在这个 API 中实现身份验证,所以我在看 JWT。
在dgrijalva/jwt-go的JWT实现中,给出如下示例:
token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
"foo": "bar",
"nbf": time.Date(2015, 10, 10, 12, 0, 0, 0, time.UTC).Unix(),
})
tokenString, err := token.SignedString(hmacSampleSecret)
hmacSampleSecret 用于对密钥进行签名。出于安全原因,这个hmacSampleSecret 是否应该是 .env 文件中的字符串?或者这个值是否应该偶尔轮换和过期?
如果推荐最后一个,是否已经有我可以使用的实现?
【问题讨论】: