Skip to content

Inicio de Sesión sin Contraseña

Autenticación simplificada para estudios de anotación rápidos y pruebas.

Inicio de Sesión sin Contraseña

Potato admite autenticación sin contraseña para tareas de anotación de bajo riesgo donde la seguridad es menos crítica que la facilidad de acceso. Esto permite a los anotadores iniciar sesión solo con un nombre de usuario, sin necesidad de contraseña.

Descripción General

El inicio de sesión sin contraseña es útil cuando:

  • Se realizan estudios de anotación rápidos con voluntarios
  • Se llevan a cabo sesiones internas de anotación en equipo
  • Se prueban configuraciones de anotación
  • Se trabaja con plataformas de crowdsourcing que gestionan la autenticación externamente
  • Se realizan ejercicios en el aula o demostraciones

Configuración

Habilita el inicio de sesión sin contraseña configurando require_password: false:

yaml
require_password: false
 
# Optional: Specify authentication method
authentication:
  method: in_memory  # Default

Métodos de Autenticación

Potato admite tres backends de autenticación, todos compatibles con el modo sin contraseña:

En Memoria (Predeterminado)

Los usuarios se almacenan solo en memoria. Los datos se pierden cuando el servidor se reinicia.

yaml
require_password: false
authentication:
  method: in_memory

Base de Datos

Los usuarios se persisten en una base de datos:

bash
export POTATO_DB_CONNECTION="sqlite:///users.db"
yaml
require_password: false
authentication:
  method: database

Clerk SSO

Integración con Clerk para inicio de sesión único empresarial:

bash
export CLERK_API_KEY="your_api_key"
export CLERK_FRONTEND_API="your_frontend_api"
yaml
authentication:
  method: clerk

Cómo Funciona

Con el Modo sin Contraseña Habilitado

  1. El usuario visita la página de inicio de sesión
  2. El usuario ingresa solo su nombre de usuario
  3. El sistema crea o autentica al usuario sin verificación de contraseña
  4. El usuario procede a la anotación

Registro de Usuarios

En el modo sin contraseña:

  • Los nuevos usuarios se registran automáticamente en su primer inicio de sesión
  • Solo se requiere el nombre de usuario
  • Los datos adicionales del usuario (si están configurados) aún se recopilan

Consideraciones de Seguridad

El modo sin contraseña proporciona seguridad mínima:

  • Sin verificación de identidad: Cualquiera puede reclamar cualquier nombre de usuario
  • Secuestro de sesión: Las sesiones pueden ser suplantadas fácilmente
  • Sin integridad en la pista de auditoría: Las acciones del usuario no pueden verificarse criptográficamente

Usos recomendados:

  • Anotación interna del equipo
  • Ejercicios en el aula
  • Prototipado rápido
  • Plataformas con autenticación externa (Prolific, MTurk)

No recomendado para:

  • Anotación de datos sensibles
  • Tareas de anotación médicas o legales
  • Tareas que requieren identidad verificada del anotador
  • Estudios de larga duración con incentivos

Archivo de Configuración de Usuarios

Incluso en modo sin contraseña, puedes pre-registrar usuarios:

yaml
authentication:
  user_config_path: users.jsonl

users.jsonl:

json
{"username": "annotator1"}
{"username": "annotator2"}
{"username": "admin", "role": "admin"}

Migración

De Contraseña Requerida a Sin Contraseña

  1. Actualiza la configuración:
    yaml
    require_password: false
  2. Los usuarios existentes aún pueden iniciar sesión con o sin su contraseña

De Sin Contraseña a Contraseña Requerida

  1. Actualiza la configuración:
    yaml
    require_password: true
  2. Los usuarios sin contraseña existentes necesitarán registrarse con una contraseña

Ejemplo Completo

yaml
annotation_task_name: "Quick Annotation Task"
 
# Enable passwordless login for easy access
require_password: false
 
# Use database backend to persist users
authentication:
  method: database
 
# Task configuration
data_files:
  - data/instances.json
 
item_properties:
  id_key: id
  text_key: text
 
annotation_schemes:
  - name: sentiment
    annotation_type: radio
    labels: [Positive, Negative, Neutral]
    description: "Select the sentiment"

Solución de Problemas

Los Usuarios No Pueden Iniciar Sesión

Verifica que:

  1. require_password: false esté configurado en la configuración
  2. El backend de autenticación esté correctamente inicializado
  3. No haya configuraciones de autenticación en conflicto

Los Datos de Usuario No Persisten

Si usas el backend in_memory:

  • Los datos de usuario se pierden al reiniciar el servidor
  • Cambia al backend database para persistencia

Errores de Nombre de Usuario Duplicado

En modo sin contraseña, los usuarios que intentan registrarse con un nombre de usuario existente simplemente inician sesión como ese usuario. Esto es por diseño para facilitar el uso.

Lectura Adicional

Para detalles de implementación, consulta la documentación fuente.