1.0
[auf_django_saml.git] / doc / configuration.rst
1 Configuration
2 *************
3
4 Cablâge de SAML dans le site
5 ============================
6
7 Le paquet apporte :
8
9   * de nouvelles urls
10
11   * de nouveaux backends d'autentification
12
13   * de nouveaux middlewares
14
15 qui doivent être déclarés dans le projet afin d'être effectivement utilisés.
16
17 Fichier *project/urls.py*
18 -------------------------
19
20 .. warning::
21
22   Les urls de *auf.django.saml.urls* doit être déclarées avant celles des admins (*admin.sites.urls* ou *admin_tools.urls*)
23   afin de cour-circuiter la page de connexion et de changement de mot de passe. 
24
25
26 .. code-block:: python
27
28     from auf.django.saml import settings as saml_settings
29
30     urlpatterns = patterns(
31         '',
32         ...
33         (r'^', include('auf.django.saml.urls')),
34         ...
35         )
36
37     if not saml_settings.SAML_AUTH:
38         urlpatterns += patterns(
39                 '',
40                 (r'^', include('auf.django.saml.mellon_urls')),
41         )
42
43 Fichier *project/settings.py*
44 -----------------------------
45
46 .. code-block:: python
47
48     INSTALLED_APP = (
49         ...
50         'auf.djangl.saml',
51         ...
52     )
53
54 Fichier *project/conf.py*
55 -------------------------
56
57 .. Warning::
58     Ce fichier est local, non commité, contenant des informations sensibles
59     relative à l'environnement de déploiement.
60
61 .. Warning::
62     En production, aucunes options SAML ne devraient être redéfinies
63     
64 Ce paquet dispose d'une option utile en mode développement:
65
66 **SAML_AUTH** peut être positionné à **False**, ce que a pour effet de simuler la présence
67 du serveur d'identités en terme de passages entre les 2 sites.
68
69 .. code-block:: python
70
71     SAML_AUTH = False
72
73
74 Fichier *project/settings.py*
75 -----------------------------
76
77 * Middleware **SMiddleware**
78
79 .. Warning::
80     *auf.django.saml.middleware.SPMiddleware* doit impérativement être déclaré après
81     *django.contrib.auth.middleware.AuthenticationMiddleware*.
82     
83 .. code-block:: python
84
85     MIDDLEWARE_CLASSES = (
86         ...
87         'django.contrib.auth.middleware.AuthenticationMiddleware',
88         'auf.django.saml.middleware.SPMiddleware',
89         ...
90         )
91
92 * Backend d'autentification **SPBackend**
93
94 .. code-block:: python
95
96     AUTHENTICATION_BACKENDS = (
97         'auf.django.saml.backends.SPBackend',
98     )
99
100
101 Options
102 =======
103
104 .. literalinclude:: ../auf/django/saml/settings.py