OAuth授权与Docker容器化技术全解析
1. OAuth授权相关知识
1.1 私有声明(Private Claims)
私有声明是自定义声明,既不属于注册声明,也不属于公共声明。我们可以根据自己的喜好来定义它们,并且它们可以针对特定的应用程序或用例。虽然私有声明不需要具备抗冲突性,但建议使用私有命名空间。与公共声明不同,私有声明包含特定于应用程序的信息,并且仅用于内部使用。例如,公共声明可能存储通用信息,如名称,而私有声明可能包含应用程序的用户ID和角色。
以下是一个示例,为虚构的天气服务的OAuth JWT定义一个私有声明,以指定我们正在使用的服务类型:
const payloadObject = {
"exp": 234133423,
"weather_public_zip": "96815",
"weather_private_type": "GitHub"
}
1.2 JWT签名(The Signature)
在有了头部和负载之后,我们使用头部中指定的算法来计算校验和,从而创建JWT签名。我们将头部和负载作为Base64编码的字符串以及一个自定义密钥传递给校验和函数。以下是在TypeScript中创建签名的代码示例:
import { createHmac } from "crypto";
const base64UrlEncode = (data: string): string => {
超级会员免费看
订阅专栏 解锁全文
11

被折叠的 条评论
为什么被折叠?



