• Print

Author Topic: Old UCL, for JamminR to look over  (Read 6 times)

0 Members and 1 Guest are viewing this topic.

Offline Megiddo

  • Ulysses Team Member
  • Hero Member
  • *****
  • Posts: 6214
  • Karma: 394
  • Project Lead
Old UCL, for JamminR to look over
« on: November 27, 2006, 07:13:12 pm »
Code: Lua
  1. -- Note: This is my old idea that I was going to use in ULib. It is fully functional, I dropped it because I thought it would be too complicated for users to understand.
  2.  
  3. --[[
  4.         Title: UCL
  5.  
  6.         ULib's Access Control List
  7. ]]
  8.  
  9. --[[
  10.         Section: Format
  11.  
  12.         This section will tell you how to format your strings/files for UCLs.
  13.  
  14.         Layout:
  15.  
  16.                 :user <user name>
  17.                 :       <possible query string ( IE: steamid, in-game name, IP, IRC hostmask )>
  18.                 :       <More optional query strings...>
  19.                 :
  20.                 :userGroup <group name>
  21.                 :       <user identifier or username (another usergroups is not accepted)>
  22.                 :
  23.                 :commandUcl <command name>
  24.                 :       ALLOW
  25.                 :               <user, identifier, usergroup, or *>
  26.                 :               <more possible identifiers, usergroups, users>
  27.                 :       DENY
  28.                 :               <user, identifier, usergroup, or *>
  29.                 :               <more possible identifiers, usergroups, users>
  30.                 :
  31.                 :uclCommandGroup <group name>
  32.                 :       <command 1>
  33.                 :       <more possible commands>
  34.                 :
  35.                 :ucl <group name or commandUclGroup group name>
  36.                 :       ALLOW
  37.                 :               <user, identifier, usergroup, or *>
  38.                 :               <more possible identifiers, usergroups, users>
  39.                 :       DENY
  40.                 :               <user, identifier, usergroup, or *>
  41.                 :               <more possible identifiers, usergroups, users>
  42.  
  43.         Full Example:
  44.  
  45.         :user Ray
  46.         :       Ray // An in-game name
  47.         :       STEAM_0:0:1234567 // A steamid
  48.         :       Rayzinator // A steam login
  49.         :       67.89.83.20 // Or an IP
  50.         :       ray.gamesurge-user.net // Or an IRC hostmask. All of thse identifiers will be associated with Ray
  51.         :
  52.         :user Bob
  53.         :       STEAM_0:0:1232364 // A steamid
  54.         :
  55.         :userGroup coolUsers
  56.         :       Ray // This will register as the four identifiers from Ray in any queries
  57.         :       Bob // This will expand to the steamid we specified
  58.         :       STEAM_0:0:412703 // You don't have to add only users here, identifiers will work too.
  59.         :
  60.         :commandUcl ulx_kickban
  61.         :       ALLOW
  62.         :               Megiddo
  63.         :       DENY
  64.         :               Bob // Bob got abusive, so he's not allowed to kickban anymore.
  65.         :               STEAM_0:0:9123872 // Identifiers can be put here too!
  66.         :
  67.         :commandUclGroup funCommands
  68.         :       ulx_slay
  69.         :       ulx_sslay
  70.         :       vmf_load
  71.         :       ulx_slap
  72.         :
  73.         :commandUcl funCommands // This will limit access to the four commands listed above
  74.         :       ALLOW
  75.         :               STEAM_0:1:3297446 // Identifiers can be put here too!
  76.         :               Megiddo
  77.         :               Bob
  78.         :       DENY
  79.         :               *
  80.  
  81.         Important Notes:
  82.  
  83.                 * *You should check with the specific addons using the UCLs to see where they want you to keep the UCL, what they want you to use for identifiers, and whether or not they accept commandUcl and commandUclGroup*.
  84.                 * You do not need the have the spacing and newlines shown above, any whitespace will work ( You could have everything on one line if you wished )
  85.                 * The "*" without the quotes will set the default access ( if you set the default to allow, and the user is on a deny list in that ucl or elsewhere being queried at the same time, the user will be denied. )
  86.                 * For commandUcl and ucl, you don't need both ALLOW and DENY, but you must have one.
  87.                 * You cannot use "*" on both allow and deny.
  88.                 * Everything is case sensitive.
  89. ]]
  90.  
Experiencing God's grace one day at a time.

  • Print