即使在阅读了各种可用文档之后,我一直在努力在我的 Symfony 项目中实现 API 密钥身份验证。其他开发人员向我提供的代码也没有帮助我。我可能无法理解文档或自己正确实现代码。但是,我对使用 JWT 或 OAUTH 等更复杂的身份验证方法不感兴趣,并且更喜欢使用简单的 API 密钥身份验证系统。我希望有人能为我提供一个清晰且易于遵循的解决方案或指导如何在 Symfony 中正确实现 API 密钥身份验证。
API 已经上线,我想通过添加这种类型的身份验证来使其更加私密,因此只有拥有密钥的人才能访问端点上的数据。密钥将存储在数据库中的某个位置,并且仅由我提供密钥的人使用。
也许有点晚了,但我希望它可以帮助别人。
文档实际上缺乏一些细节。使用给定的身份验证器时,您应该配置用户提供程序以通过用户的 apiKey 属性获取用户。
或者您可以提供对 UserBadge 对象的回调,该对象将用于获取用户(而不是用户提供者)。
这是要点,还有更多细节。