RFC 7617指定客户端应如何在“基本”身份验证中构造Authorization标头:
要获得授权,客户端
从用户那里获取用户名和密码,
通过连接用户ID(单个)来构造用户通道 冒号(“:”)和密码,
将用户密码编码为一个八位字节序列(请参见下文以获取 字符编码方案的讨论),
并通过对该八位字节序列进行编码来获得基本证书 使用Base64([RFC4648],第4节)转换为US-ASCII序列 字符([RFC0020])。
因此,从客户端的角度来看,用户名和密码共同构成了标头的凭据部分。但是,RFC似乎对标头的实际值没有任何要求。因此-从理论上讲-我可以使用“基本”身份验证来创建自定义方案。例如,携带API令牌:
Authorization: Basic APITOKEN
有什么可以阻止我推广此功能的吗?客户端和服务器都是内部工具,都可以通过Internet进行部署,并且该服务器永远无法获得其他客户端。
请注意,我知道这不符合RFC的精神,还有更好的选择,例如Bearer /空用户名。