1 Make a symbolic link to the example product directory from within the
2 appropriate Zope instance's Products directory:
3
4 cd Zope/instances/Products
5 ln -s ../../../WebStack/examples/Zope/SimpleProduct
6
7 Or copy the example product directory into the Zope instance's Products
8 directory:
9
10 cp -R WebStack/examples/Zope/SimpleProduct Zope/instances/Products/
11
12 Then configure the etc/zope.conf file to add details of the example
13 application and the WebStack package. In the appropriate section, add the
14 following directives (adjusted for the exact configuration):
15
16 path /home/paulb/Software/Python/WebStack
17 path /home/paulb/Software/Python/WebStack/examples/Common
18
19 Upon starting or restarting Zope, add the example product using the management
20 interface (eg. add "Simple product" as "test") and then visit the anticipated
21 URL; for example:
22
23 http://localhost:8080/test
24
25 --------
26
27 Authentication/authorisation in Zope:
28
29 Like mod_python (and Apache), Zope prevents application-level control over
30 HTTP Basic authentication. However, the authenticator approach can still be
31 used to control access to resources. When the Auth example is deployed in a
32 normal "public" folder in a Zope instance, it is possible to merely supply the
33 desired username and any password to satisfy the elementary security check.
34 However, should the Auth example be deployed in a folder with its own access
35 controls, then all access to the application must first go through the Zope
36 security checks (which entail the proper authentication of the user through
37 the validation of the user's password) before being validated by the
38 elementary security check performed in the AuthAuthenticator class.
39
40 To set up such a protected folder, do the following in the Zope management
41 interface:
42
43 * Choose "Folder" in the menu of objects to add.
44 * Choose an "Id" and "Title", and to "Create user folder", then "Add".
45 * Choose the new folder.
46 * Choose the "Security" tab, and change the "View" permission so that only
47 authenticated users have access.
48 * Add appropriate users to the "acl_users" folder inside the new folder.
49 * Add WebStack resources to the new folder.