Firebase 自定义身份验证:JavaScript 中 Firebase 机密的安全性
Firebase Custom Authentication: Security of Firebase Secret in JavaScript
我想在我的 Angular 应用程序中使用 Firebase Custom Authentication。这个动作真的很简单:
var FirebaseTokenGenerator = require("firebase-token-generator");
var tokenGenerator = new FirebaseTokenGenerator("<YOUR_FIREBASE_SECRET>");
var token = tokenGenerator.createToken({ uid: "uniqueId1", some: "arbitrary", data: "here" });
但是在文档页面中有关于 Firebase Secret 安全性的警告:
Firebase JWTs should always be generated on a trusted server so that
the Firebase app secret which is needed to generate them can be kept
private.
我想知道如果每个人都可以查看我的 JavaScript 源代码并阅读那里的 Firebase Secret,我该如何保密我的 Firebase Secret?我是不是遗漏了什么,或者在 JavaScript 中不可能做到这一点?
您引用的代码将 运行 在您的 nodejs 服务器 上(因此 - 服务器端 javascript)。
服务器组件 FirebaseTokenGenerator
负责生成令牌并将其发送回 JS 客户端,在 客户端已通过您的服务器身份验证后,随便你想要的方法。这就是为什么它被命名为 custom authentication.
我想在我的 Angular 应用程序中使用 Firebase Custom Authentication。这个动作真的很简单:
var FirebaseTokenGenerator = require("firebase-token-generator");
var tokenGenerator = new FirebaseTokenGenerator("<YOUR_FIREBASE_SECRET>");
var token = tokenGenerator.createToken({ uid: "uniqueId1", some: "arbitrary", data: "here" });
但是在文档页面中有关于 Firebase Secret 安全性的警告:
Firebase JWTs should always be generated on a trusted server so that the Firebase app secret which is needed to generate them can be kept private.
我想知道如果每个人都可以查看我的 JavaScript 源代码并阅读那里的 Firebase Secret,我该如何保密我的 Firebase Secret?我是不是遗漏了什么,或者在 JavaScript 中不可能做到这一点?
您引用的代码将 运行 在您的 nodejs 服务器 上(因此 - 服务器端 javascript)。
服务器组件 FirebaseTokenGenerator
负责生成令牌并将其发送回 JS 客户端,在 客户端已通过您的服务器身份验证后,随便你想要的方法。这就是为什么它被命名为 custom authentication.