Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

696
Vistas
Integre python-social-auth (social-app-django) para usar con el administrador de Django

Quiero crear una aplicación que use el administrador de django, pero permita inicios de sesión a través de google (la cuenta de google de mi empresa) en lugar del ModelAdmin predeterminado de django.

Actualmente, parece que social-app-django ( google ) es el camino a seguir, pero después de haber instalado y configurado un proyecto, no tengo claro cómo puedo permitir que los inicios de sesión de administrador de django usen la autenticación social-app-django . Intenté configurar mi proyecto como se describe aquí http://python-social-auth.readthedocs.io/en/latest/configuration/django.html pero no está claro cómo se puede integrar esto con el administrador de django.

Encontré este fragmento (que parece desactualizado ) y lo agregué, pero obtengo un 404 cuando intento ir a /admin/ :

Página no encontrada (404) Método de solicitud: GET URL de solicitud: http://127.0.0.1:8000/accounts/login/?next=/admin/login/%3Fnext%3D/admin/ Usando la URLconf definida en telos.urls , Django probó estos patrones de URL, en este orden: ^login/(?P[^/]+)/$ [name='begin'] ^complete/(?P[^/]+)/$ [name=' complete'] ^desconectar/(?P[^/]+)/$ [nombre='desconectar'] ^desconectar/(?P[^/]+)/(?P[^/]+)/$ [nombre ='disconnect_individual'] ^admin/ La ruta actual, accounts/login/, no coincide con ninguno de estos.

Si elimino el fragmento, /admin/ redirigirá a /admin/login/ y al intentar iniciar sesión devolverá el texto de ERROR:

Ingrese el nombre de usuario y la contraseña correctos para una cuenta de personal. Considere que ambos campos son sensibles al uso de mayúsculas.

Además de la configuración , agregué lo siguiente a mi settings.py :

proyectos/modelos.py (MiUsuario)

 from django.contrib.auth.models import AbstractUser class MyUser(AbstractUser): pass

configuración.py

 # for identification of SOCIAL_AUTH_USER # http://python-social-auth.readthedocs.io/en/latest/configuration/settings.html#user-model SOCIAL_AUTH_USER_MODEL = 'projects.MyUser' AUTH_USER_MODEL = 'projects.MyUser' # not sure if this is needed

¿Alguien puede indicarme cómo puedo configurar mi proyecto para permitirme iniciar sesión en el administrador de django a través de social-app-django ( google )?

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Django Admin usa la aplicación auth contrib, por lo que cualquier proceso de autenticación activa el mismo mecanismo que un usuario que inicia sesión en una sección que no es de administrador y será procesado por backends de python-social-auth si están definidos en la configuración AUTHENTICATION_BACKENDS .

Para que funcione necesitarás:

  1. Agregue un enlace de Login with Google (vinculando a /login/google-oauth2 ) al formulario de inicio de sesión. Puede anular el formulario de inicio de sesión predeterminado agregando una plantilla admin/login.html o definiendo un AdminSite personalizado
  2. Asegúrese de que el usuario esté marcado como is_staff , de lo contrario, se prohibirá el acceso al administrador.
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda