Django FogBugz authentication backend
Project description
This authentication backend for django, will authenticate against a FogBugz (http://www.fogcreek.com/fogbugz/) issue tracker. It uses the python interface (https://developers.fogbugz.com/default.asp?W199) to the FogBugz API (http://fogbugz.stackexchange.com/fogbugz-xml-api).
Source code, and issues can be found on GitHub (https://github.com/dougn/django-auth-fogbugz). Full documentation is on PyPi packages (http://packages.python.org/django-auth-fogbugz/).
User Model Extension
There is an extension profile model which is included with this auth backend to help with integrating with the FogBugz API when you set AUTH_FOGBUGZ_ENABLE_PROFILE to True in your settings, and include django-auth-fogbugz as an application in INSTALLED_APPS (see below):
user.fogbugzprofile.token user.fogbugzprofile.ixPerson user.fogbugzprofile.is_normal user.fogbugzprofile.is_community user.fogbugzprofile.is_administrator
Example:
import fogbugz
from django.conf import settings
fb = fogbugz.FogBugz(settings.AUTH_FOGBUGZ_SERVER,
user.fogbugzprofile.token)
resp = fb.search(q='assignedTo:"me" status:"Active"',
cols="ixBug,sTitle",
max=10)
top_ten = ''
for case in resp.cases.findAll('case'):
top_ten += "%s: %s\n" % (case.ixbug.string,
case.stitle.string.encode('UTF-8'))
Settings
AUTH_FOGBUGZ_SERVER = "https://my_account.fogbugz.com/"
# By default community users will not be authenticated. If you wish to include
# FogBugz community user logins, set this to True.
#
AUTH_FOGBUGZ_ALLOW_COMMUNITY = False
# Have django-auth-fogbugz create the django user if it does not already
# exist, and the user authenticates.
#
AUTH_FOGBUGZ_AUTO_CREATE_USERS = False
# If your FogBugz server is using the LDAP integration for authentication, then
# You need to set this to True in order to have authentication work properly.
# If you are also have AUTH_FOGBUGZ_AUTO_CREATE_USERS set to True, then the
# first time a user logs in to the django site, they must use their LDAP
# username, and not their e-mail address.
#
AUTH_FOGBUGZ_SERVER_USES_LDAP = False
# FogBugz has a concept if a superuser, the 'administrator' flag on accounts.
# The following settings will map this information to the django account.
#
AUTH_FOGBUGZ_MAP_ADMIN_AS_SUPER = False
AUTH_FOGBUGZ_MAP_ADMIN_AS_STAFF = False
# There is an extension profile model which is included with this auth backend
# to help with integrating with the FogBugz API::
#
# user.fogbugzprofile.ixPerson
# user.fogbugzprofile.is_community
# user.fogbugzprofile.is_administrator
#
#
# You must also add 'django-auth-fogbugz' as django app in your
# INSTALLED_APPS when enabling this.
#
AUTH_FOGBUGZ_ENABLE_PROFILE = False
# With the fogbugz profile extension enabled, there is the option to store
# the serurity login token for the FogBugz user. This token can be used
# instead of the username and password to log into the FogBugz server.
# The authentication token can be accessed via the profile::
#
# user.fogbugzprofile.token
#
#
# ..note:: If you enable token storage, make sure your SESSION_COOKIE_AGE
# is less than or equal to the FogBugz expiration time (2 weeks,
# same as the django default) and that FogBugz Server
# Configuraition for Authentication logon is set to
# ``"Remember Me" Allowed``.
#
# ..warning:: Enabling the profile token extension will allow any code with
# access to the user models to have a login authentication token
# for non-expired users. This could allow Django code to access
# the FogBugz server as those users.
#
# You must also add 'django-auth-fogbugz' as django app in your
# INSTALLED_APPS and set AUTH_FOGBUGZ_ENABLE_PROFILE to true
# when enabling this.
#
AUTH_FOGBUGZ_ENABLE_PROFILE_TOKEN = False
# Keep ModelBackend around for per-user permissions and maybe a local
# superuser.
AUTHENTICATION_BACKENDS = (
'django_auth_fogbugz.backend.FogBugzBackend',
'django.contrib.auth.backends.ModelBackend',
)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for django-auth-fogbugz-1.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9374d3dc840bd783f1d417aaab06fa3e487ac72fe4f2443b908f880d87315b78 |
|
MD5 | e43c13a4f2d1a2a120cbf49e2a58b69b |
|
BLAKE2b-256 | 7eeff7f9b908e2e1e692a3520ea7714bdf3d84c9b8a264fc8ce2f80118be552f |