Firebase: check if the supplied password equals the user's
I have the following function as part of a check if it is OK to generate tokens with subsequent logging in the user. It is supposed to return true
if and only if the user with the given email has the given password:
login = function(username,password) {
admin.auth().getUserByEmail(username)
.then( userRecord => {
console.log("Success in fetching user: "+userRecord.toJSON());
})
.catch( error => {
console.log("Error fetching user: "+error);
return false ;
});
return true ;
}
How do I user the function argument password
here? The userRecord
object only has passwordHash
and passwordSalt
, but (perhaps rightly so) not the password itself. Then, how do I do something like if ( userRecord.passowrd().equals(password) )
?
firebase firebase-authentication
add a comment |
I have the following function as part of a check if it is OK to generate tokens with subsequent logging in the user. It is supposed to return true
if and only if the user with the given email has the given password:
login = function(username,password) {
admin.auth().getUserByEmail(username)
.then( userRecord => {
console.log("Success in fetching user: "+userRecord.toJSON());
})
.catch( error => {
console.log("Error fetching user: "+error);
return false ;
});
return true ;
}
How do I user the function argument password
here? The userRecord
object only has passwordHash
and passwordSalt
, but (perhaps rightly so) not the password itself. Then, how do I do something like if ( userRecord.passowrd().equals(password) )
?
firebase firebase-authentication
add a comment |
I have the following function as part of a check if it is OK to generate tokens with subsequent logging in the user. It is supposed to return true
if and only if the user with the given email has the given password:
login = function(username,password) {
admin.auth().getUserByEmail(username)
.then( userRecord => {
console.log("Success in fetching user: "+userRecord.toJSON());
})
.catch( error => {
console.log("Error fetching user: "+error);
return false ;
});
return true ;
}
How do I user the function argument password
here? The userRecord
object only has passwordHash
and passwordSalt
, but (perhaps rightly so) not the password itself. Then, how do I do something like if ( userRecord.passowrd().equals(password) )
?
firebase firebase-authentication
I have the following function as part of a check if it is OK to generate tokens with subsequent logging in the user. It is supposed to return true
if and only if the user with the given email has the given password:
login = function(username,password) {
admin.auth().getUserByEmail(username)
.then( userRecord => {
console.log("Success in fetching user: "+userRecord.toJSON());
})
.catch( error => {
console.log("Error fetching user: "+error);
return false ;
});
return true ;
}
How do I user the function argument password
here? The userRecord
object only has passwordHash
and passwordSalt
, but (perhaps rightly so) not the password itself. Then, how do I do something like if ( userRecord.passowrd().equals(password) )
?
firebase firebase-authentication
firebase firebase-authentication
edited Nov 16 '18 at 8:17
KENdi
5,8392922
5,8392922
asked Nov 16 '18 at 1:54
IlonpilaajaIlonpilaaja
341214
341214
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Validating a users email and password is not part of the Admin SDK. You would need to use the client SDKs to do this and pass up an ID token which you could then validate.
There is one way ive found to be able to do it but not sure if its supported but there is a rest API that will verify the password and return back an idToken
property that you can return back to the client.
curl -X POST
'https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key=ENTER_THE_FIREBASE_API_KEY'
-H 'Content-Type: application/json'
-H 'cache-control: no-cache'
-d '{
"email" : "demo@email.com",
"password" : "demo123",
"returnSecureToken" : true
}'
ENTER_THE_FIREBASE_API_KEY
you can get from the firebase console
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53330372%2ffirebase-check-if-the-supplied-password-equals-the-users%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Validating a users email and password is not part of the Admin SDK. You would need to use the client SDKs to do this and pass up an ID token which you could then validate.
There is one way ive found to be able to do it but not sure if its supported but there is a rest API that will verify the password and return back an idToken
property that you can return back to the client.
curl -X POST
'https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key=ENTER_THE_FIREBASE_API_KEY'
-H 'Content-Type: application/json'
-H 'cache-control: no-cache'
-d '{
"email" : "demo@email.com",
"password" : "demo123",
"returnSecureToken" : true
}'
ENTER_THE_FIREBASE_API_KEY
you can get from the firebase console
add a comment |
Validating a users email and password is not part of the Admin SDK. You would need to use the client SDKs to do this and pass up an ID token which you could then validate.
There is one way ive found to be able to do it but not sure if its supported but there is a rest API that will verify the password and return back an idToken
property that you can return back to the client.
curl -X POST
'https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key=ENTER_THE_FIREBASE_API_KEY'
-H 'Content-Type: application/json'
-H 'cache-control: no-cache'
-d '{
"email" : "demo@email.com",
"password" : "demo123",
"returnSecureToken" : true
}'
ENTER_THE_FIREBASE_API_KEY
you can get from the firebase console
add a comment |
Validating a users email and password is not part of the Admin SDK. You would need to use the client SDKs to do this and pass up an ID token which you could then validate.
There is one way ive found to be able to do it but not sure if its supported but there is a rest API that will verify the password and return back an idToken
property that you can return back to the client.
curl -X POST
'https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key=ENTER_THE_FIREBASE_API_KEY'
-H 'Content-Type: application/json'
-H 'cache-control: no-cache'
-d '{
"email" : "demo@email.com",
"password" : "demo123",
"returnSecureToken" : true
}'
ENTER_THE_FIREBASE_API_KEY
you can get from the firebase console
Validating a users email and password is not part of the Admin SDK. You would need to use the client SDKs to do this and pass up an ID token which you could then validate.
There is one way ive found to be able to do it but not sure if its supported but there is a rest API that will verify the password and return back an idToken
property that you can return back to the client.
curl -X POST
'https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key=ENTER_THE_FIREBASE_API_KEY'
-H 'Content-Type: application/json'
-H 'cache-control: no-cache'
-d '{
"email" : "demo@email.com",
"password" : "demo123",
"returnSecureToken" : true
}'
ENTER_THE_FIREBASE_API_KEY
you can get from the firebase console
edited Nov 16 '18 at 9:51
answered Nov 16 '18 at 9:33
Jack WoodwardJack Woodward
63149
63149
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53330372%2ffirebase-check-if-the-supplied-password-equals-the-users%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown