예제 #1
0
파일: tasks.py 프로젝트: Tvaske/sponge
 def __call__(self, *args, **kwargs):
     # if you don't provide "user" as a kwarg, this just acts like
     # a normal ol' boring task
     if "user" in kwargs:
         user = kwargs.pop("user")
         CeleryTaskTracker.objects.create(taskid=self.request.id,
                                          taskclass=self.__class__.__name__,
                                          owner=user)
         get_pulp_server(user=user)
     self.errors = []
     return Task.__call__(self, *args, **kwargs)
예제 #2
0
파일: backend.py 프로젝트: Tvaske/sponge
 def authenticate(self, username, password=None):
     """ authenticate a user """
     try:
         self.server.set_basic_auth_credentials(username, password)
         logging.info("Successfully logged in with password")
         cert = self.userapi.admin_certificate()
         bundle = SpongeBundle(username)
         bundle.write(cert)
         self.server = get_pulp_server(new=True)
         self.server.set_ssl_credentials(bundle.crtpath())
         udata = self.userapi.user(username)
         logger.info("%s logged in successfully" % username)
     except server.ServerRequestError, err:
         logger.warning("Login failure for %s: %s" % (username, err[1]))
         return None
예제 #3
0
파일: middleware.py 프로젝트: Tvaske/sponge
 def process_request(self, request):
     if (request.path != self.require_login_path and
         request.user.is_anonymous()):
         if request.POST:
             return login(request)
         else:
             return redirect_to_login(request.path, self.require_login_path)
     elif not request.user.is_anonymous():
         try:
             pulpserver = get_pulp_server(user=request.user.username)
         except (BIOError, server.ServerRequestError), err:
             logger.warning("Session for %s expired" %
                            request.user.username)
             logout(request)
             messages.warning(request, "Your session has expired")
             return redirect_to_login(request.path, self.require_login_path)
         except IOError, err:
             logger.info(err)
             logout(request)
             return redirect_to_login(request.path, self.require_login_path)
예제 #4
0
파일: backend.py 프로젝트: Tvaske/sponge
 def __init__(self):
     self.server = get_pulp_server()
     self.userapi = UserAPI()