title: How can I logout a user in Django?
body: <p>Our Django deployment checks every night which active users can still be found in out LDAP directory.  If they cannot be found anymore, we set them to inactive.  If they try to login next time, this will fail.  Here is our code that does this:</p>
  
  <pre><code>def synchronize_users_with_ad(sender, **kwargs):
      """Signal listener which synchronises all active users without a usable
      password against the LDAP directory.  If a user cannot be
      found anymore, he or she is set to “inactive”.
      """
      ldap_connection = LDAPConnection()
      for user in User.objects.filter(is_active=True):
          if not user.has_usable_password() and not existing_in_ldap(user):
              user.is_active = user.is_staff = user.is_superuser = False
              user.save()
              user.groups.clear()
              user.user_permissions.clear()
  
  maintain.connect(synchronize_users_with_ad)
  </code></pre>
  
  <p>But if they are still logged in, this session(s) is/are still working.  How can we make them invalid immediately?  All settings of the session middleware are default values.</p>