我想对我的Vue使用Firebase身份验证。js应用程序考虑以下限制:
期望的结果是:a)使用昵称、密码注册
如何使用firebase身份验证对我的用户进行身份验证?
注册
NickName=nickNameText.getText().toString.trim()+"@firebase.com";
Password = passwordText.getText().toString().trim();
firebaseAuth.createUserWithEmailAndPassword(NickName, Password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
//checking if success
if(task.isSuccessful()){
//display some message here
if(type=="User") {
task.getResult().getUser().getUid();
AddUserInfo(task.getResult().getUser().getUid());
}else
{
AddAlimInfo(task.getResult().getUser().getUid());
}
Intent intent=new Intent(getApplicationContext(),MainActivity.class);
intent.putExtra("Type",TypeSpinnerStr);
startActivity(intent);
// startActivity(new Intent(Signup_Activity.this, MainActivity.class));
Toast.makeText(getApplicationContext(),"Successfully registered",Toast.LENGTH_LONG).show();
}else{
//display some message here
Toast.makeText(getApplicationContext(),"Registration Error",Toast.LENGTH_LONG).show();
}
progressDialog.dismiss();
}
});
}
private void AddUserInfo(String id) {
UserClass User=new UserClass();
User.setUserID(id);
User.setUserName(Name);
Email+="@firebase.com";
User.setUserNickname(NickName);
User.setUserPassword(Password);
mdatabaseReference.child("Users").child(UserID).setValue(User);
}
登录名
private void userLogin(){
nickName= editTextNickName.getText().toString().trim();
password = editTextPassword.getText().toString().trim();
//if the email and password are not empty
//displaying a progress dialog
progressDialog.setMessage("Logging in Please Wait...");
progressDialog.show();
//logging in the user
firebaseAuth.signInWithEmailAndPassword(nickName, password)
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
//if the task is successfull
if(task.isSuccessful()){
//start the profile activity
initFirebase();
//Check in user Node that whether data exists or not
//if exists then login else show Snakbar data does not exist
mAuthUserStr = mAuth.getCurrentUser().getUid();
mEmail=mAuth.getCurrentUser().getEmail();
AddEventFireBaseListner(mAuthUserStr,TypeSpinnerStr);
// startActivity(new Intent(getApplicationContext(), MainActivity.class));
}
}
});
}//end of user
public void AddEventFireBaseListner(String uid,String userType) {
// mdatabaseReference.child("Users").child(UserID).setValue(User);
circular_progress2.setVisibility(View.VISIBLE);
mdatabaseReference.child("Users").child(uid).orderByKey("user_id").equalTo(uid).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//Compare your Auth Email with user Login email
}
}
您可以使用Firebase自定义身份验证或使用Firebase Admin SDK for node和createUser()函数来完成此操作。
您的用户登录流如下所示:
用户在注册屏幕中输入所需凭据。
你在用户名后加上你的域名作为电子邮件,比如说你用chris的用户名注册,然后在幕后加上你的域名。com所以它变成了chris@yourdomain.com 。这确实阻止了重置密码的选项,因此请记住这一点。
你可以在这里看到Frank关于同一主题的答案用户名验证而不是电子邮件
我正在使用fire base制作一个反应原生应用程序,用于使用电子邮件登录im并通过身份验证。但是,有没有办法使用用户名和密码登录?
我正在尝试按照以下准则使用谷歌的新火力基础 sdk 设置自定义身份验证: https://firebase.google.com/docs/auth/server#use_a_jwt_library 在 samble 代码中它说: 从JSON密钥文件中获取您的服务帐户的电子邮件地址和私钥 不幸的是,我不知道从哪里获取这个json文件。如果我去我的firebase控制台(https://consol
我正在将swagger应用于我的一个项目。 然后,他们应该在标头中随每次调用一起发送此令牌。 所以它就像: 看看swagger文档,它似乎只是为了处理OAuth而设置的。有没有办法让swagger以我的方式处理身份验证?我的意思是在生成的代码中。我可以为项目生成代码,它只有“Basic:...”作为选项。
在过去的几周里,我一直在努力掌握KeyClope,这样我就可以实现一种使用遗留提供商(基于Oracle,带有会话表和各种奇怪的东西)对用户进行身份验证的方法。我们计划在不久的将来解决这个问题,但目前我们必须解决这个问题,所以我们的想法是在前线使用KeyClope——利用它提供的主要好处,比如SSO——在需要身份验证的应用程序中省略传统的身份验证提供程序。 我读了一些关于构建自定义OIDC身份提供程
于是我在这里看到:https://firebase . Google . com/docs/auth/web/account-linking # link-auth-provider-credentials-to-a-user-account现在可以在Firebase中链接用户账号了。我还看到Firebase提供了匿名认证的功能,它为一个用户创建一个用户会话,不需要任何凭证。 在我们的应用程序中,
我试图在一个反应式Spring Boot应用程序中配置一个Spring Security性,该应用程序具有一个Vuejs前端,在未经身份验证时将用户重定向到外部OpenID提供程序(用于身份验证)。在用户通过OpenID提供程序进行身份验证并重定向回应用程序(前端)后,将根据OpenID提供程序的响应创建用户名密码身份验证令牌(身份验证),并手动进行身份验证。 但是,在执行此操作时,应用程序似乎无