在 Vapor 中使用 API-Key

Car*_*los 5 vapor

我正在使用 Vapor 开发一个简单的 Web API。为了提供更多背景信息,我是后端开发的新手。

API 的使用者将是一个 iOS 应用程序。目前,我不需要用户注册即可使用该应用程序。我想保持这种状态。

另一方面,我希望进行一些身份验证,以避免任何人都可以使用我正在开发的 API。

寻找信息我发现了如何实施身份验证。但是我所看到的示例是基于在后端为应用程序的每个用户创建用户。我不想做的事。当我们使用第三方 api 时,我想像往常一样使用 api 密钥。

我怎么能用 Vapor 进行“api-key 认证”?

或者,我应该创建一个唯一的用户/密码,它由 iOS 应用程序的所有用户(使用 API)共享,然后使用基本或令牌身份验证?

非常感谢!

卡洛斯

0xT*_*Tim 5

解决这个问题的一种方法是创建一个假令牌,并使用一个TokenAuthenticationMiddleware或更可能的自定义中间件来检查传入的令牌。

但是,请注意,没有什么可以阻止任何人检查来自您的应用程序的流量以查看令牌,然后使用它来访问您的 API。