Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

694
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!