Add authentication to access passkeys#919
Conversation
|
Esto significa que si abro la página de passkeys, pongo la contraseña, y en otra tab abro otra página, al volver a la tab de passkeys voy a tener que poner contraseña de nuevo? Cómo lo manejan otras aplicaciones? |
Por lo que estuve probando (Github y Google durante unos 5 minutos), parece que luego de que se realiza la autenticación para acceder a tus Passkeys, salvo que selecciones |
Yo diría que sí! Los tiempos específicos podemos verlos luego pero iría por ahí |
| def verify_password | ||
| unless session[:password_passkey_verification] | ||
| render :verify_password | ||
| end | ||
| end |
There was a problem hiding this comment.
Qué opinan de hacer algo un poco más genérico?
Pienso que quizás podríamos tener algún tipo de PasswordVerificationController o algo así que luego de verificar la contraseña redirija a donde digamos 🤔
There was a problem hiding this comment.
En mastodon lo solucionaron con un concern:
No tenemos necesariamente que ir por ahí, pero me pareció estaba bueno vicharlo
| <div class="relative w-full mb-6" data-controller="show-password"> | ||
| <%= f.password_field :password, class: "bg-white w-full rounded-md px-3 py-1.5 outline-1 outline-gray-300 focus:outline-2 focus:outline-indigo-600 with-error:outline-red-500 with-error:focus:outline-red-600", data: { show_password_target: "password" }, required: true %> | ||
|
|
||
| <%= button_tag type: "button", class: "flex items-center absolute inset-y-0 right-0 px-3 focus:outline-indigo-600 cursor-pointer hover:text-indigo-700", data: { action: "show-password#toggle" } do %> |
There was a problem hiding this comment.
| <%= button_tag type: "button", class: "flex items-center absolute inset-y-0 right-0 px-3 focus:outline-indigo-600 cursor-pointer hover:text-indigo-700", data: { action: "show-password#toggle" } do %> | |
| <%= f.submit class: "flex items-center absolute inset-y-0 right-0 px-3 focus:outline-indigo-600 cursor-pointer hover:text-indigo-700", data: { action: "show-password#toggle" } do %> |
|
Entiendo que estaría bueno (y como usuario esperaría) poder utilizar tambien una passkey para acceder a esta sección 🤔 |
Resumen:
Detalles:
De momento se implementó guardar en la
sessionun booleanpassword_passkey_verification:true: no le pide al usuario ingresar su contraseña si quiere acceder a sus passkeysfalse: le pide al usuario ingresar su contraseña si quiere acceder a sus passkeysEste boolean se setea en
falseen elapplication_controlleren unabefore_action, con la excepción al acceder a las acciones delpasskeys_controller(ya que una vez ingresada la contraseña la idea es que el usuario pueda manejar sus passkeys mientras esta enusuarios/passkeys)Pregunta:
Screenshot: