home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Spezial / SPEZIAL2_97.zip / SPEZIAL2_97.iso / ANWEND / ONLINE / SREFV12J / ALL_FILE.CTL < prev    next >
Text File  |  1997-07-22  |  13KB  |  279 lines

  1. ; Support file for SRE-FILTER HTTP server. 5/97
  2. ; This file is used to store SEL-specific access information.
  3. ;
  4. ; SRE-FILTER will attempt to (exact or wildcard) match the 
  5. ; request selector with one of these entries.
  6. ;
  7. ; Each entry should be a space delimited list containing:
  8. ;  HOST_NICKNAME// NAME  RESOURCE_PRIVS , PERMISSIONS_LIST , SEL_REALM , FAIL_FILE , ADV_OPTIONS_FILE
  9. ;
  10. ; HOST_NICKNAME//)  Optional.
  11. ;     Used to identify "host specific" entries.  If a host_nickname is present,
  12. ;     then the entry is only used with requests to hosts having this host_Nickname.
  13. ;
  14. ; NAME) Required.
  15. ;   The NAME  should be a possible request selector
  16. ;       (to be compared against the request selector sent by the clien)
  17. ;       It may indicate a file, or a server side action.
  18. ;       It may contain (several) * (wildcard) character(s).
  19. ;
  20. ;       Definition of "request selector:"
  21. ;           The "request selector" is the non-domain part of the URL the
  22. ;           client selected.
  23. ;           For example, a URL of
  24. ;                 http://your.server/big/dance/price.htm
  25. ;           would generate a request string of
  26. ;                 GET  /big/dance/price.htm  HTTP/1.0
  27. ;           and the selector would be
  28. ;                big/dance/price.htm
  29. ;
  30. ; RESOURCE_PRIVS) Optional.
  31. ;      The RESOURCE_PRIVS  should be a (space delimited) list.
  32. ;      It can contain 2 forms of privileges:
  33. ;          ONE_OF -- the client has to have "one of" these ONE_OF privileges
  34. ;          MUST_HAVE -- the client "must have" all of the MUST_HAVE privileges
  35. ;      To specify a MUST_HAVE privilege, add a & character at the beginning.
  36. ;      Otherwise, it is assumed to be a ONE_OF privilege
  37. ;                 (in other words, ONE_OF is the default form)
  38. ;.
  39. ;      For example, the list:
  40. ;           SALMON &TROUT HALIBUT
  41. ;      means that the client must have a TROUT privilege, as well as
  42. ;      either a SALMON or HALIBUT privilege (note that the TROUT privilege
  43. ;      is necessary but NOT sufficient!)
  44. ;
  45. ;      There are a few special "ONE_OF" privileges: *  YES and NO
  46. ;          YES and * mean "allow everyone in" (given MUST_HAVE privs are ok)
  47. ;          NO means "only superusers"
  48. ;
  49. ;     Notes:
  50. ;
  51. ;       *   If there are no ONE_OF conditions, it is assumed that the
  52. ;           "ONE_OF conditions are automatically satisfied" (the same can be
  53. ;           said if there  are no MUST_HAVE conditions).
  54. ;       *   The realm-specific resource privilege list (see below)
  55. ;           is appended to this RESOURCE_PRIVS list.
  56. ;       *   If the combination of this RESOURCE_PRIVS list, and a "realm-specific
  57. ;           resource privileges" list is empty (that is, neither is specified),
  58. ;           then access IS allowed.
  59. ;       *   If the ADD_RESOURCE_NAME='YES', then the "action" portion of the request
  60. ;           selector is added to the resource privilege list.
  61. ;       *   Caution: when including entries of the form:
  62. ;                   SECRETS/*  ADMIN1
  63. ;            and NODIR_EXT='DIR', then a request generated by
  64. ;                  http://foo.bar.net/secrets
  65. ;            will NOT match the SECRETS/* .. entry.
  66. ;
  67. ;       *   See ADDPRIVS.DOC for a discussion of how client's are granted 
  68. ;           privileges.
  69. ;
  70. ; PERMISSIONS_LIST) Optional.
  71. ;   The PERMISSIONS_LIST is optional (there MUST be comma seperating the
  72. ;       RESOURCE_PRIV and the PERMISSIONS_LIST)
  73. ;
  74. ;   Each of these permissions apply to <em>just this selector </em> (or, if
  75. ;   you used an *, to just this  set of selectors)
  76. ;     NO_SSI  : Suppress server side includes.
  77. ;     NO_SSP  : Suppress server side processing.
  78. ;     NO_CODE : Suppress SELECT and INTERPRET CODE ssi-keyphrases.
  79. ;           NO_CODE is a subset of NO_SSP (that is, if NO_SSP is present,
  80. ;           then NO_CODE is irrelevant)
  81. ;     CACHE :  ALWAYS cache this selector (assuming GoServe's caching is enabled).
  82. ;           Typically, if logon controls or access controls are in place, then
  83. ;           caching is disabled.  Use of CACHE allows one to override this
  84. ;           general rule for.
  85. ;      PUT :  Allow PUT method requests to "copy information to" the directory
  86. ;           represented by this selector (also used by GET_URL and PUT_FILE
  87. ;           facilities)
  88. ;    DELETE :  Allow DELETE method request to "delete" the file represented by
  89. ;           this selector.
  90. ;    NO_HTACCESS: Suppress the HTACCESS method.
  91. ;    NO_ALIAS   : Suppress SRE-Filter "aliasing."
  92. ;    NO_VIRTUAL : Suppress virtual directory lookup.
  93. ;    NO_POSTFILTER: Suppress post-filter processing (such as common-log auditing,
  94. ;               and augmentation of the SRE-Filter RECORD_ALL file).
  95. ;
  96. ;   The last three (NO_VIRTUAL, NO_ALIAS, and NO_POSTFILTER) are meant
  97. ;   to be used to avoid unnecessary processing.  Note that, NO_VIRTUAL
  98. ;   is ignored by CGI-BIN scripts and SRE-Filter addons (use the virtual
  99. ;   dircectory's limitation_lists instead).
  100. ;
  101. ; REALM) Optional.
  102. ;   The REALM is optional (there must be a comma between the REALM and the
  103. ;   PERMISSIONS_LIST).  The REALM is displayed as a SEL-specific realm
  104. ;   whenever SRE-Filter needs to "re prompt" the client for a 
  105. ;   new username/password (as when the user's first username/password
  106. ;   did not contain sufficient privileges to access the selector).
  107. ;
  108. ;   In addition, special !REALM entries in this file can be used as
  109. ;   shorthands for "additional sets of resource privileges" (see below).
  110. ;
  111. ;
  112. ; FAIL_FILE) Optional.
  113. ;    The FAIL_FILE  (sometimes refered to as the ACCESS_FAILURE_FILE)
  114. ;    is optional (there must be a comma between the FAIL_FILE
  115. ;    and the REALM). If the client does not have SEL-specific access
  116. ;    privileges, then the FAIL_FILE is used as a "response file".  Basically,
  117. ;    the FAIL_FILE "overrides" the ACCESS_FAIL_FILE parameter.
  118. ;    Note that the FAIL_FILE should be one of:
  119. ;              -1: If no access, do NOT ask for authorization. Useful when
  120. ;                  combined with "dynamic privileges"
  121. ;     0 or blank :  use generic access_fail_file (or send an authorization response)
  122. ;   filename.ext :  a fully qualified file name.
  123. ;
  124. ;  Actually, the ACCESS_FAIL_FILE can suppress use of this FAIL_FILE -- see
  125. ;  initfilt.doc for details.
  126. ;
  127. ; ADV_OPTS_FILE) Optional.
  128. ;  The ADV_OPTS_FILE is optional -- if you do specify it, you must 
  129. ;  precede it with a comma (to seperate it from the FAIL_FILE)
  130. ;  SRE-Filter allows you to specify several "advanced options", including:
  131. ;     * customization of the response header,
  132. ;     * execution of a rexx program before sending a file (sort of
  133. ;       "mid-filter" hook),
  134. ;     * suppression of SSI features (such as headers and footers) --
  135. ;  all on a request-selector-specific basis.  
  136. ;  To do this, you must use the ADV_OPTS_FILE parameter to specify a 
  137. ;  special "advanced options file". 
  138. ;  The ADV_OPTS_FILE should be a relative file name, though it may point to a
  139. ;  subdirectory (it will be interpreted relative to the the GoServe working
  140. ;  directory).  For more details, see ADV_OPTS.DOC
  141. ;
  142. ;                        ---------------------------
  143. ; NOTES:
  144. ;
  145. ; Special Entries: additional, REALM-specific, resource privileges
  146. ;
  147. ;     Each realm can have associated with it a list of "realm specific 
  148. ;     resource privileges".  If available, this (space delimited)
  149. ;     list is added to the RESOURCE_PRIVS list.
  150. ;     The syntax of these special entries is:
  151. ;           !REALM  realm_name  realm_privilege_list
  152. ;     See below for some examples of realm_privilege_lists.
  153. ;
  154. ;     NOTE: Currently, these realm entires are NOT host specific!
  155. ;          (Hint: To minimize confusion...
  156. ;                Use the host nickname as part of the realm_name)
  157. ;
  158. ; Match precedence and wildcarding:
  159. ;   Entries are checked using a "multiple wildcard" algorithim.
  160. ;   (the multiple wildcard feature is new to version 1.2j).
  161.  
  162. ;   If several entries can match the selector...
  163. ;     1) Exact matches always take precedence
  164. ;     2) The wildcard match that has the most "early character" matches wins
  165. ;     Thus, if your selector is FOOD/FRUIT/ORANGES.HTM
  166. ;     then the order (with first being chosen before last) is:
  167. ;               FOOD/FRUIT/ORANGES.HTM  (the exact match)
  168. ;               FOOD/FRUIT/*HTM
  169. ;               FOOD/FRUIT/*
  170. ;               FOOD/*IT/*HTM
  171. ;               FOOD/*.HTM          
  172. ;               FOOD*
  173. ;     (these entries can appear in any order in this file, with no
  174. ;      effect on precedence). For further discussion, see SREFILTR.FAQ
  175. ;
  176. ;     Some wildcard examples:
  177. ;                  /BILL/DOG.HTM will match /BILL/DOG.HTM
  178. ;                  /JOE/*  will match /JOE/FOO.HTM
  179. ;                  /JOAN/SRCH.HTM?*  will match /JOAN/SRCH.HTM?search+me
  180. ;                  /JOAN/SRCH.HTM?*  will NOT match /JOAN/SRCH.HTM
  181. ;                       (/JOAN/SRCH.HTM* will match BOTH these examples)
  182. ;                  /PETS/*FOOD/*INDEX.HTM will match
  183. ;                       /PETS/FOOD/INDEX.HTM, /PETS/CAT/FOOD/INDEX.HTM and
  184. ;                       /PETS/PUPPY/FOOD/LAB/INDEX.HTM
  185. ;                    but will NOT match
  186. ;                       /PETS/CAT/PUREBRED.HTM and /PETS/FOOD/HELLO.HTM
  187. ;
  188. ;  / and \ :  They are treated the same (all / are converted to \)
  189. ;                       A Leading \ (or /) is stripped.
  190. ;
  191. ;                        - - - - - - - -
  192. ; EXAMPLES:
  193. ;
  194. ; Only superusers have access to the SYSTEM subdirectory
  195. ;SYSTEM\*   NO
  196. ; only inhouse and superusers have access to the PRIVATE directory
  197. ;PRIVATE\*  INHOUSE
  198. ; everyone has access to the PUBLIC\ directory, but documents in the
  199. ; public directory can not contain SELECT or INTERPRET CODE keyphrases.
  200. ;PUBLIC\*  * , NO_CODE
  201. ;
  202. ; Requests, to the host with nickname SWEETSHOP, for selectors that match  RECORDS/*,
  203. ; requires INHOUSE privileges
  204. ; SWEETSHOP//  RECORDS/*  INHOUSE , , ADMIN_REALM
  205. ;
  206. ; The client has to have "one of" VENUS,MARS, or MERCURY privlieges,
  207. ; and "must have" an EARTH privilege, to access the PLANETS/INNER directory.
  208. ; If the client does not have these privilegs, D:\WWW\NOPLANET.HTm
  209. ; is returned (given that ACCESS_FAIL_FILE<>0.
  210. ; PLANETS/INNER/*  MERCURY VENUS &EARTH MARS , , , d:\www\NOPLANET.HTM
  211. ;
  212. ; Allow uploads and deletes in the Uploads directory 
  213. ; UPLOADS/* * , DELETE PUT 
  214. ;
  215. ; this wildcards all requests for getafile.  Add a privilege list if you 
  216. ; want to limit it's use 
  217. ;GETAFILE*
  218. ;
  219. ; These wildcard the  message box facilitiy.
  220. ; Add a privilege list if desired ..
  221. ;MESSAGE*
  222. ;!ASKMESS*
  223. ;
  224. ; This controls access to the SECRET2 message box
  225. ;!VIEWMESS?messbox=secret2*  INHOUSE
  226. ; all other message boxes are open to everyone with VIEWMESS privileges.
  227. ;!VIEWMESS* VIEWMESSAGES
  228. ;
  229. ; This gives selectors pointing to the GUEST subdirectory (or virtual directory)
  230. ;  a limited purview 
  231. ;GUEST/*  * , NO_SSI NO_SSP , GUEST_REALM
  232. ;
  233. ; This will use the NEW.CTL "advanced options file" with all selectors
  234. ; that point to NEWSTUFF (and below). Note that there are no permissions
  235. ; specified, and no FAIL_FILE.
  236. ;NEWSTUFF/*  * , , EXPERIMENTAL , , NEW.CTL
  237. ;
  238. ; allow caching of GIF files in (or under) the IMG directory; and don't bother
  239. ; checking aliases or the virtual directories, and don't do postfilter stuff
  240. ;IMGS/*.GIF * , CACHE NO_ALIAS NO_VIRTUAL NO_POSTFILTER
  241. ;
  242. ;This gives access to a clients with a privilege of MARTIANS, IONIANS
  243. ;  or one of the privileges in the "additional resource privilege" list
  244. ; associated with the SPACMEN realm (see below), access to files
  245. ; in the STELLAR directory
  246. ;STELLAR/* MARTIANS IONIANS ,  , SPACEMEN
  247. ;
  248. ;
  249. ; and this last one means "for all other files, everyone has access" 
  250. ; (it's a catchall) -- change the second * to whatever privilege list 
  251. ; you want (i.e.; NO, to disallow all access)
  252. ;/* *
  253. ;  ---------------------- Some !REALM examples
  254. ; Note that !REALM entries can appear in any order or location in this file,
  255. ; but there should only be one entry per realm_name.
  256. ;
  257. ; In this example, all selectors with entries that have SEL-specific 
  258. ;  REALM of "REALM1" will have BIGFOOT and SASQUATCH added to 
  259. ;  their (possibly empty) RESOURCE_PRIV list.
  260. ; That is, the client will be allowed access  (to selectors with
  261. ; SEL-specfic realm of REALM1) if they have a privilege
  262. ; of BIGFOOT or SASQUATCH (or one the entries in the RESOURCE_PRIV
  263. ; list).
  264. ;!REALM  REALM1  BIGFOOT  SASQUATCH
  265. ;
  266. ; Note that the SPACEMEN realm has "additional resource
  267. ; privileges" of: VULCANS KLINGONS and FERENGI
  268. ;!REALM  SPACEMEN  VULCANS KLINGONS FERENGI
  269. ;
  270. ; and the SPACEMEN2 realm requires a FEDERATION privileges as well
  271. ; as "one of" the VULCANS KLINGONS or FERENGI
  272. ;!REALM SPACEMEN2 VULCANCS KLINGONS FERENGI &FEDERATION
  273. ;
  274. ; (summary: host// sel privs , permiss , realm , failfile , advoptfile
  275. ; --------- End of examples
  276. IMGS/*.GIF * , CACHE NO_ALIAS NO_VIRTUAL NO_POSTFILTER
  277. /* *
  278.  
  279.