.net core Web API and Firebase Auth



我正在使用 .NET Core Web API 开发Web应用程序。到目前为止,我已经使用 Identity 对用户进行身份验证和管理。是否经常是这种情况,建议使用 Google Firebase auth 之类的身份验证服务?

我正在考虑使用Google Firebase auth,以便用户可以以不同的方式登录(使用Facebook,Google等(。但是,我想拥有一个自托管的后端应用程序和数据库。现在我问自己:

  1. 如何将用户数据存储在服务器上:我应该使用UID(从Firebase返回(作为外键将相关数据保存在数据库中?

  2. 如何使用角色(身份(?如何从特定用户中添加/删除角色?

  3. 我应该在数据库中存储其他用户数据(例如电子邮件,名称等(,还是应该始终从令牌中检索这些Infos!这些Infos是否完全由Firebase Auth提供?

感谢您将光线带入黑暗!

  1. 您有自己的用户数据库。当用户登录并获取内部用户firebase自定义令牌时,您可以验证firebase ID令牌。

    docs/auth/users

  2. 您将它们存储在自己的数据库中,然后将它们添加到firebase自定义令牌中。

  3. 取决于您需要多少数据以及数据是否与Firebase基本数据有所不同。

将firebase添加到您的应用程序

<script src="https://www.gstatic.com/firebasejs/4.1.3/firebase.js"></script>
<script>
  // Initialize Firebase
  // TODO: Replace with your project's customized code snippet
  var config = {
    apiKey: "<API_KEY>",
    authDomain: "<PROJECT_ID>.firebaseapp.com",
    databaseURL: "https://<DATABASE_NAME>.firebaseio.com",
    storageBucket: "<BUCKET>.appspot.com",
    messagingSenderId: "<SENDER_ID>",
  };
  firebase.initializeApp(config);
</script>

如果您尚未将应用程序连接到Firebase项目,请从Firebase控制台进行操作。启用电子邮件/密码登录:在Firebase控制台中,打开Auth部分。在"方法"选项卡上,启用电子邮件/密码登录方法,然后单击"保存"。

创建一个基于密码的帐户

通过将新用户的电子邮件地址和密码传递给createUserWitheMailandPassword:

来创建一个新帐户
firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
  // Handle Errors here.
  var errorCode = error.code;
  var errorMessage = error.message;
  // ...
});

有关更多信息,请浏览

https://firebase.google.com/docs/auth/web/password-auth

相关内容

  • 没有找到相关文章

最新更新