首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebase身份验证与Firebase管理员

Firebase身份验证与Firebase管理员
EN

Stack Overflow用户
提问于 2018-06-26 22:37:34
回答 2查看 4.7K关注 0票数 8

firebase身份验证和firebase管理员之间有什么区别?

据我所知,与firebase身份验证不同,firebase admin具有身份验证功能,它可以绕过安全机制。firebase管理主要在服务器端实现,而firebase认证主要在客户端实现。

我想知道为什么firebase身份验证应该在客户端,为什么我们应该使用firebase身份验证而不是firebase admin来实现身份验证功能。

EN

回答 2

Stack Overflow用户

发布于 2018-06-26 23:14:22

Firebase身份验证是一种产品,允许您编写代码让您的用户登录到您的应用程序,并限制用户访问其他Firebase产品中的资源。SDK提供了多种平台。

Fireabse Admin是一个SDK,允许您在后端编写代码来操作Firebase和Google Cloud服务(如实时数据库、Firestore、云存储和云消息)中的数据。如你所说,它只用于后台,绕过了为客户端应用程序建立的正常安全措施。

你不能在你的应用程序中使用Firebase Admin SDK的原因是,为了让SDK运行,你必须在你的应用程序中提供私有凭据。在你的应用程序中发送你的凭证是一个巨大的安全漏洞--不要这么做。将它们安全地保存在您的后端,恶意用户不能对您的代码进行反向工程并使用您的凭据。

票数 11
EN

Stack Overflow用户

发布于 2018-06-26 23:24:52

Firebase身份验证

Firebase身份验证在客户端应用程序中用于标识特定用户。它用于限制firebase上的资源。因此,它严格地位于最终用户区域。

Firebase管理员

Firebase admin是另一种方式,它纯粹是为了后端。您可以使用它来定义Firebase的自定义逻辑,还可以修改Firebase服务以满足您的需求。下面是一些用例场景。

1.用户管理

为了管理Firebase用户,访问Firebase控制台并不总是很方便。管理员用户管理API为这些相同的用户提供编程访问。它甚至允许你做Firebase控制台做不到的事情,比如检索用户的完整数据,更改用户的密码、电子邮件地址或电话号码。

2.自定义身份验证

您可以将外部用户系统与Firebase集成。例如,您可能已经有一个预先存在的用户数据库,或者您可能想要与Firebase身份验证本身不支持的第三方身份提供程序集成。

3.实名认证

Firebase身份验证主要用于识别应用程序的用户,以便限制对其他Firebase服务的访问,例如Firebase实时数据库和云存储。但您也可以使用该服务在您自己的服务器上识别这些用户。这使您可以代表已使用Firebase身份验证登录的用户安全地执行服务器端逻辑。

4.自定义用户声明

在某些情况下,您可能希望为已经使用支持的Firebase身份验证提供程序之一登录的用户实现细粒度访问控制,例如电子邮件/密码、Google、Facebook、电话等。自定义用户声明和应用程序安全规则的组合提供了此功能。例如,使用Firebase Auth的电子邮件/密码提供程序登录的用户可以使用自定义声明定义访问控制。

欲了解更多信息,请访问firebase doc

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51045549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档