自定义API密钥以保护firebase函数端点



我需要一个长期使用的API密钥生成器,以保护我的API端点仅适用于授权用户(拥有API密钥的用户(。所以我认为Firebase中没有什么可以开箱即用的东西。我认为每次用户注册并请求API时,我都应该生成一个Firestore文档钥匙然后我将使用文档ID作为API键,我可以在Cloud Function中验证该键。类似这样的东西:

const apiKey = req.headers.authorization.split('Bearer ')[1];
const doc = await admin.firestore().collection('apiKeys').doc(apiKey).get();
if (doc.exists) {
next();
}

所以我的问题是:

  • 这是个好方法吗
  • 你还有其他建议吗
  • 它能缩放吗

只要您确保您的用户无法获得API密钥的列表,这听起来是一种合理的方法。

它在几乎任何数据库上都可以扩展,因为您所需要做的就是检查是否存在具有给定ID的文档。

相关内容

  • 没有找到相关文章

最新更新