Javascript 如何修改laravel中间件以使用firebase身份验证
我在laravel和firebase工作,作为身份验证和数据存储的后端。我正在使用firebase提供的js代码登录用户Javascript 如何修改laravel中间件以使用firebase身份验证,javascript,laravel,laravel-5,firebase-authentication,Javascript,Laravel,Laravel 5,Firebase Authentication,我在laravel和firebase工作,作为身份验证和数据存储的后端。我正在使用firebase提供的js代码登录用户 firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) { // Handle Errors here. var errorCode = error.code; var errorMessage = error.message; // ... });
firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// ...
});
问题是我想保护我的路由不受未经身份验证的用户的攻击。由于js将当前用户的uid存储在localStorage中,我如何在中间件中检查用户是否登录。为此,我必须使用单独的数据库吗?请帮我朝正确的方向走。你必须打电话:
auth.currentUser.getIdToken().then(function(token) {
// The Firebase id token is returned here.
// You will have to send that along your requests to your server.
// Keep in mind this is a short lived token
// You have to call getToken each time you need it in case
// it is auto refreshed underneath.
});
目前,Firebase提供node.js和java后端库来验证令牌以检查用户是否登录。
一个php库正在开发中。当它准备好时,它应该提供类似的功能来铸造自定义令牌和验证Firebase id令牌。您必须调用:
auth.currentUser.getIdToken().then(function(token) {
// The Firebase id token is returned here.
// You will have to send that along your requests to your server.
// Keep in mind this is a short lived token
// You have to call getToken each time you need it in case
// it is auto refreshed underneath.
});
目前,Firebase提供node.js和java后端库来验证令牌以检查用户是否登录。
一个php库正在开发中。准备好了,,它应该为定制令牌和验证Firebase id令牌提供类似的功能。您只需使用此laravel软件包通过Firebase进行身份验证您只需使用此laravel软件包通过Firebase进行身份验证我想在我的中间件中检查用户是否登录以保护我的应用程序路由。我从localStorage获取用户信息并将其存储在cookie中,然后在我的中间件中读取cookie,这是一种安全的方法吗?即使您在中间件中读取cookie,您仍然需要验证令牌。我建议现在只将上面获得的Firebase Id令牌存储在cookie中。在不久的将来,当php库准备好时,您将能够使用它来验证这一点。localStorage包含一些敏感数据,如刷新令牌,不应将其发送到后端,因为它不会过期,除非发生大的帐户更改,并且您不想冒泄露的风险。请确保您的站点通过https加密,并为您的cookie设置安全标志。同时请记住,id令牌每小时过期一次,因此您必须在每次刷新cookie时更新cookie值。firebase团队正在短期内开发一个php库,另外还有一个更好的会话管理解决方案,这将有助于您的案例。对于稍后阅读本文的人,现在是:auth.currentUser.getIdToken.ThenFunctionToken我想在我的中间件中检查用户是否登录以保护我的应用程序路由。我从localStorage获取用户信息并将其存储在cookie中,然后在我的中间件中读取cookie,这是一种安全的方法吗?即使您在中间件中读取cookie,您仍然需要验证令牌。我建议现在只将上面获得的Firebase Id令牌存储在cookie中。在不久的将来,当php库准备好时,您将能够使用它来验证这一点。localStorage包含一些敏感数据,如刷新令牌,不应将其发送到后端,因为它不会过期,除非发生大的帐户更改,并且您不想冒泄露的风险。请确保您的站点通过https加密,并为您的cookie设置安全标志。同时请记住,id令牌每小时过期一次,因此您必须在每次刷新cookie时更新cookie值。firebase团队正在短期内开发一个php库,另外还有一个更好的会话管理解决方案,这将有助于您的案例。对于稍后阅读本文的人,它现在是:auth.currentUser.getIdToken.thenfunctiontoken