Use django-social-auth & Google Accounts for admin login

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
from django.conf import settings
from django.contrib import admin
from django.contrib.auth.views import redirect_to_login
from django.core.exceptions import PermissionDenied

# Support for allowing social_auth authentication for /admin (django.contrib.admin)
if getattr(settings, 'SOCIAL_AUTH_USE_AS_ADMIN_LOGIN', False):

    def _social_auth_login(self, request, **kwargs):
        if request.user.is_authenticated():
            if not request.user.is_active or not request.user.is_staff:
                raise PermissionDenied()
        else:
            return redirect_to_login(request.get_full_path())

    # Overide the standard admin login form.
    admin.sites.AdminSite.login = _social_auth_login

More like this

  1. ImageField for Google App Engine by davepeck 4 years, 5 months ago
  2. Admin App/Model Custom Ordering by stephen_mcd 4 years, 1 month ago
  3. Twin column model admin index by richardbolt 6 years ago
  4. Google Closure support in django-compress by fabrice.bonny 4 years, 5 months ago
  5. Using Google Apps Premium infrastructure for user management by tommy 5 years, 8 months ago

Comments

(Forgotten your password?)