Why We Don't Trust the Database with Authenticationa month agohttps://blog.sturdystatistics.com/posts/api_keys/不要将数据库视为API身份验证的最终真理源,因为这会造成危险的漏洞,可能导致全系统被攻破。SQL注入可以通过允许攻击者复制和替换API密钥哈希来绕过API安全,从而跨租户授予未经授权的访问权限。使用带有服务器端密钥的加密绑定来签署API密钥,将它们与密钥ID、轮换版本和组织ID等结构上下文绑定,以防止哈希交换攻击。通过在哈希中包含轮换版本并使用数据库触发器来强制版本号单向递增,从而实现防回滚能力。更多...