37 lines
1.2 KiB
Python
37 lines
1.2 KiB
Python
from rest_framework.permissions import BasePermission
|
|
|
|
from django.contrib.auth.models import Permission
|
|
|
|
class HasAuthorizationHeader(BasePermission):
|
|
def has_permission(self, request, view):
|
|
|
|
return 'Authorization' in request.headers
|
|
|
|
class ItsAdminToken(BasePermission):
|
|
def has_permission(self,request,view):
|
|
return request.user.is_superuser
|
|
|
|
class ItsAdminGroup(BasePermission):
|
|
def has_permission(self, request, view):
|
|
return request.user.groups.filter(name= 'admin_soft')
|
|
|
|
class CheckPermiso(BasePermission):
|
|
|
|
def has_permission(self, request, view):
|
|
user = request.user
|
|
#print(user)
|
|
permiso= request.META.get('HTTP_PERMISSION')
|
|
print('permiso',permiso)
|
|
#print('es staff: ',user.is_staff)
|
|
#print('su: ',user.is_superuser)
|
|
#print('Permisos:', user.user_permissions.filter(codename = permiso))
|
|
print(user.has_perm(permiso))
|
|
#print('Grupos',user.groups.all())
|
|
if user.is_staff:
|
|
return True
|
|
|
|
if user.is_superuser:
|
|
return True
|
|
if user.has_perm(permiso):
|
|
return True
|
|
return False |