password_hash & salt with facebook authentication

AI-generated summary

When using Facebook authentication, the password_hash and salt fields in the database are still populated. will_io initially questioned what values from the Facebook API correspond to these fields, but discovered that even when users sign up with Facebook, a password_hash and salt are still generated. fantasticfears and fantasticfears clarified that the password is not set by the user, but rather can be reset by the user through their settings page. pfaffman explained that a single account can authenticate against multiple mechanisms, including local password, Google, or Facebook, as long as the email is the same. Hyan confirmed this behavior and noted that users can log in using either their OAuth2 provider credentials or their local password, set through the reset password function.

What in the facebook API becomes the password_hash and salt when a user signs up and authenticates using facebook?

They are remain empty.

I thought there was a portion of users who – if they have their facebook settings set a specific way – could possibly both authenticate using facebook and also set a password.

I think that’s my problem. Or I might have a different problem.

Either way I have a user with Facebook() as a login and a password_hash/salt in the db.

Edit: I just checked with a dummy facebook acct. A password_hash and salt are still being set at registration if I use facebook. So something on my end might be drastically wrong I just don’t know what.

I am not following.

It doesn’t matter at all. You don’t have chance to set password when using an OAuth services if they provide username and email.

The user can use their setting page to reset their password.

Users can authenticate against any of the available mechanisms. As long as the email is the same, a single account can authenticate against Google, Facebook, or a local password. Does that explain what you are seeing?

Tenía la misma pregunta. ¿Por qué el password_hash (o salt) todavía está configurado en la base de datos para una cuenta registrada a través de proveedores OAuth (uso el plugin Discourse OAuth2 Basic)? Mi experimento demuestra que los usuarios pueden iniciar sesión (si uno no deshabilita “habilitar inicios de sesión locales” cuando OAuth2 está habilitado y configurado) a través de su contraseña local que se establece a través de las funciones de restablecimiento de contraseña en su panel de preferencias. También pueden iniciar sesión a través de las credenciales de sus proveedores OAuth2. Ambos mecanismos están permitidos, como dijo pfaffman.

Tengo curiosidad por saber cuál es el valor inicial sin procesar de password_hash.