使用 Istio 进行 JWT 身份验证(充当 API 网关)
本文基于 Istio1.5 编写测试
Istio 支持使用 JWT 对终端用户进行身份验证(Istio End User Authentication),支持多种 JWT 签名算法。
目前主流的 JWT 算法是 RS256/ES256。(请忽略 HS256,该算法不适合分布式 JWT 验证)
这里以 RSA256 算法为例进行介绍,ES256 的配置方式也是一样的。
本文基于 Istio1.5 编写测试
Istio 支持使用 JWT 对终端用户进行身份验证(Istio End User Authentication),支持多种 JWT 签名算法。
目前主流的 JWT 算法是 RS256/ES256。(请忽略 HS256,该算法不适合分布式 JWT 验证)
这里以 RSA256 算法为例进行介绍,ES256 的配置方式也是一样的。
介绍具体的 JWT 签名算法前,先解释一下签名、摘要/指纹、加密这几个名词的含义:
数字签名的具体实现,通常是先对数据进行一次 Hash 摘要(SHA1/SHA256/SHA512 等),然后再使用非对称加密算法(RSA/ECDSA 等)的私钥对这个摘要进行加密,这样得到的结果就是原始数据的一个签名。
kubectl describe
能看到容器上次被重启的原因State.Last State.Reason = OOMKilled, Exit Code=137
.Manjaro 是一个基于 Arch Linux 的 Linux 滚动发行版,用着挺舒服的。最大的特点,是包仓库很丰富,而且都很新。代价是偶尔会出些小毛病。
四年大学惨淡收场,坐在火车硬座上,心里有些忐忑。
对面坐着一个 16 岁的女孩子,从合肥去深圳当安检,隐约听到“700 块一个月”,“再怎么着十天也有一休吧”,说实话深感惭愧。
个人笔记,不保证正确。
ForeignKey
与 relationship
关系构建的重点,在于搞清楚这两个函数的用法。ForeignKey
的用法已经在SQL表达式语言 - 表定义中的约束
讲过了。主要是 ondelete
和 onupdate
两个参数的用法。
这网络小说一起头,就停不下来。开始还只是追更新,每天看看三四本书的更新(一更或二更)就行了,说不上心满意足,但也没多么欲求不满。
到了三月下旬,突然就想看本新书。念头一起就一发不可收拾,只挑二三十万字的连载书看——首要原因是怕收不住手,书太长的话,废寝忘食起来自己遭罪;其次是前二十多万字都可以免费看,后面才是收费章节。
个人笔记,如有疏漏,还请指正。
使用多线程(threading)和多进程(multiprocessing)完成常规的并发需求,在启动的时候 start、join 等步骤不能省,复杂的需要还要用 1-2 个队列。随着需求越来越复杂,如果没有良好的设计和抽象这部分的功能层次,代码量越多调试的难度就越大。