Commit | Line | Data |
---|---|---|
aa2ccaae OL |
1 | Déploiement |
2 | *********** | |
3 | ||
4 | Lorsqu'on parle de déploiement, c'est dans le sens où on désire brancher | |
5 | son site Web avec Apache, Mellon et le serveur d'identités. | |
6 | ||
7 | Cette opération peut se faire localement, sous réserve que notre application | |
8 | soit déclarée sur le serveur d'autentification. | |
9 | ||
10 | Prérequis | |
11 | ========= | |
12 | ||
13 | Installer Apache >=2 | |
14 | ++++++++++++++++++++ | |
15 | ||
16 | ||
17 | Installer Mellon | |
18 | ++++++++++++++++ | |
19 | ||
20 | .. warning:: | |
21 | ||
56de6221 OL |
22 | TODO : Demander à JC pour le dépôt AUF |
23 | ||
24 | .. warning:: | |
25 | ||
aa2ccaae OL |
26 | La version installée doit respecter ces versions: |
27 | ||
28 | * mod_mellon >= 0.4 | |
29 | ||
30 | * liblasso3 > 2.2.2 | |
31 | ||
32 | .. Note:: | |
33 | ||
34 | Configurer Apache pour qu'il charge ce nouveau module dans le fichier | |
35 | */etc/apache/httpd.conf* | |
36 | ||
37 | LoadModule auth_mellon_module /usr/lib/apache2/modules/mod_auth_mellon.so | |
38 | ||
39 | ||
40 | Créer un nouveau host | |
41 | +++++++++++++++++++++ | |
42 | ||
43 | Ajout d'un host dans le fichier *etc/hosts*, exemple ici: **olarcheveque** | |
44 | ||
45 | ||
56de6221 OL |
46 | Créer les fichiers pour communiquer avec le serveur d'identités |
47 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | |
aa2ccaae OL |
48 | |
49 | **metadata.xml**:: | |
50 | ||
51 | wget --no-check-certificate https://id.auf.org/idp/saml2/metadata -O /srv/id.auf.org-metadata.xml | |
52 | ||
53 | **clefs**:: | |
54 | ||
55 | openssl req -new -x509 -keyout /srv/olarcheveque-mellon-key.pem -out /srv/olarcheveque-mellon-cert.pem -nodes -days 3650 -newkey rsa:2048 -subj "/CN=olarcheveque" | |
56 | ||
57 | Créer un vhost *olarcheveque* | |
58 | +++++++++++++++++++++++++++++ | |
59 | ||
60 | dans /etc/site-available/olarcheveque: | |
61 | ||
62 | :: | |
63 | ||
64 | <VirtualHost *:80> | |
65 | ServerName olarcheveque | |
66 | ErrorLog /var/log/apache2/olarcheveque-error.log | |
67 | LogLevel warn | |
68 | CustomLog /var/log/apache2/olarcheveque-access.log combined | |
69 | Alias /static /net/nfs-authnss.b.ca.auf/home/olivier.larcheveque/Projets/olarcheveque/sitestatic | |
70 | WSGIScriptAliasMatch ^/(?!mellon) /net/nfs-authnss.b.ca.auf/home/olivier.larcheveque/Projets/olarcheveque/bin/django.wsgi | |
71 | ||
72 | <Location /> | |
73 | AuthType "Mellon" | |
74 | MellonEnable "info" | |
75 | MellonUser "mail" | |
76 | MellonOrganizationName "olarcheveque" | |
77 | MellonOrganizationDisplayName "fr" "olarcheveque" | |
78 | MellonOrganizationURL "http://www.auf.org" | |
79 | MellonSPPrivateKeyFile /srv/olarcheveque-mellon-key.pem | |
80 | MellonSPCertFile /srv/olarcheveque-mellon-cert.pem | |
81 | MellonIdPMetadataFile /srv/id.auf.org-metadata.xml | |
82 | </Location> | |
83 | ||
84 | </VirtualHost> | |
85 | ||
86 | .. note:: | |
87 | ||
88 | Ne pas oublier d'activer le vhost avec **a2ensite**. | |
89 | ||
56de6221 OL |
90 | Déboggage |
91 | ========= | |
92 | ||
93 | .. versionadded:: 1.1 | |
94 | ||
95 | Les variables transférées par mellon peuvent être loggées | |
96 | pour fin d'examen. | |
97 | ||
98 | Exemple de configuration de LOGGING dans *project/conf.py*:: | |
99 | ||
100 | import os | |
101 | from django.conf.global_settings import LOGGING as DEFAULT_LOGGING | |
102 | ||
103 | PROJECT_ROOT = os.path.dirname(__file__) | |
104 | SITE_ROOT = os.path.dirname(PROJECT_ROOT) | |
105 | ||
106 | LOGGING = DEFAULT_LOGGING | |
107 | ||
108 | LOGGING['handlers']['file'] = { | |
109 | 'level':'DEBUG', | |
110 | 'class':'logging.FileHandler', | |
111 | 'filename': os.path.join(SITE_ROOT, 'django.log'), | |
112 | } | |
113 | ||
114 | LOGGING['loggers']['SAML'] = { | |
115 | 'handlers': ['file', ], | |
116 | 'level': 'DEBUG', | |
117 | 'propogate': False | |
118 | } | |
119 |