[Zope3-checkins] CVS: Zope3/doc/security - background.rst:1.3

Christian Theune ct@gocept.com
Mon, 17 Mar 2003 15:52:40 -0500


Update of /cvs-repository/Zope3/doc/security
In directory cvs.zope.org:/tmp/cvs-serv28140

Modified Files:
	background.rst 
Log Message:
tried some first steps. 

@SteveA, please review my little changes and tell me if thats what you want.


=== Zope3/doc/security/background.rst 1.2 => 1.3 ===
--- Zope3/doc/security/background.rst:1.2	Fri Mar  7 10:06:26 2003
+++ Zope3/doc/security/background.rst	Mon Mar 17 15:52:40 2003
@@ -19,7 +19,13 @@
 1a. "Zope" is available in several different versions. In this document,
    we are concerned only with Zope version 3X.x.x and Zope version 3.x.x.
 
-   TODO: briefly explain Zope 3X and Zope 3.
+1b. "Zope 3X" is the preliminary version of Zope 3. It is built from the ground
+    up, paying attention to the lessons learned from Zope 2 and CMF. It is not a
+    product but intended to let developers get familiar with the new architecture
+    early.
+    
+1c. "Zope 3" is the mainline release intended for production use and including
+    backwards compatibility to Zope 2. 
 
 2. Python is an object-oriented language suitable both for writing stand-alone
    scripts and for large-scale software projects. It is implemented in C,
@@ -42,10 +48,6 @@
    calls within zope occur in-process. There's no CORBA or DCOM style
    server sitting around waiting for calls. (XXX rewrite this.)
 
-x. "Publishing" is the process where, upon receiving a request from a client,
-   Zope renders a view on an object and returns this to the client.
-   For HTTP and FTP, the response takes the form of a sequence of bytes.
-
 5. A Python object is a building-block of a software system. An object
    has a set of attributes, identified by name. An attribute represents
    either a piece of data (that is, another object), or a function or
@@ -79,7 +81,27 @@
 Publishing
 ----------
 
-  write more here about the publication process
+10. "Publishing" is the process where, upon receiving a request from a client,
+   Zope renders a view on an object and returns this to the client.
+   For HTTP and FTP, the response takes the form of a sequence of bytes.
+
+10a. To actually publish an object several steps need to be taken. First the
+    incoming request needs to be transformed into a standard data structure
+    independent of the actual protocol used. Using the information from the
+    request we can associate a principal responsible for it and identify the
+    requested object using a mechanism called "traversal". 
+    Before responding to the request and actually retrieving data from the
+    object, the object is wrapped with a security proxy that intermediates
+    access to the object using the security management APIs. 
+
+    
+    security
+    assertions are applied paying respect to the parameters of the principal
+    and the object and his context. After retrieving information from the
+    object the result needs to be 
+
+    
+    form the requests
 
   convert URL into a sequence of path segments
   traverse from the root to the next object based on the first path segment.