access_condition_system_acs_codes
With ACS codes a SysOp is able to gain complete control over what a user
can do, this may sound communistic or overbearing but look at it this way,
you wont have to worry too much about someone hacking into the board. With
full ASC code capability and if your expressions are complete they still wont
have that many more options that can be damaging to the system. When you
weigh the benefits of these ACS codes, you'll find that your users will
actually like them, because it means that your thorough and your system will
be up longer because no one has any back door capabilities, unlike some other
systems. There are several codes that can be used, each with it's own
particular use, and when you combine these into large expressions it tends
to make things more secure. Each ACS code is explained below in as much
detail as I can muster.
= True if the user is in local mode. This allows for a SysOp to
secure certain areas from over the modem use, preventing users
from using commands which may or may not be dangerous to the
system.
* True if OkFlag (See Miscellaneous Menu Commands) is set, if the
OkFlag has been left unset, this command will return false and
will continue to the next command set, ignoring all information
of the current command set, unless otherwise stated.
Axx A user must be 'xx' years or older in order for this ACS code to
be true, if it returns false, then it will continue on to the
next command set, ignoring all information in the current
command set, unless otherwise stated.
Bxxxxx A user must be connected at 'xxxxx' baud or faster in order for
this ACS code to be true, if it returns false, then it will
continue on to the next command set, ignoring all information in
the current command set, unless otherwise stated. This ACS code
will also return true when in local mode.
Cx A user must be in message conference 'x' in order for this to
return a true response, when it returns a false response it will
ignore all information in the current command set and move on to
the next command set.
Dxxx A user must have a Download Security Level (DSL) of 'xxx' or
greater to return a true response, if it returns a false
response it will ignore all information regarding the current
command set and move on to the next command set.
Fx A user must have the access flag 'x' toggled on in order for
this ACS code to return true, if a user doesn't have the access
flag 'x' toggled on, Iniquity will ignore all remaining
information regarding the current command set and continue on
to the next command set.
Gx A user must be of gender 'x' (M = Male, F = Female) in order for
the ACS code to return true, if false Iniquity will move on to
the next command set, ignoring all information in the current
command set.
Hxx If the hour is 'xx' (xx = 0 to 23) or later, then the ACS
command will return true, if the ACS command returns false it
will ignore all remaining information in the current command set,
and move on to the next command set.
Kxxx If a user's area code is 'xxx' then this ACS command will return
true.
Nxx If a user is on this node the command can be executed.
Pxxxx A users number of posts must be at least 'xxxx' in order for the
ACS code to return true, if false it will ignore all remaining
information in the current command set, and move on to the next
command set.
Sxxx If a user has a security level (SL) of 'xx' or greater then the
ACS code will return true, if false then all remaining
information will be ignored in the current command set, and
Iniquity will move on to the next command set.
Txxxx If a user has at least 'xxxx' minutes left online then the ACS
code will return true, if the user doesn't have 'xxxx' minutes
left online, then the ACS code will return false and Iniquity
will ignore all remaining information and move on to the next
command set.
Uxxxx If the user is number 'xxxx', then the ACS code will return
true, if false then all remaining information will be ignored by
Iniquity and Iniquity will move onto the next command set.
V If a user has a validation level of 'B' or greater, the this ACS
code will return true, when false all remaining information will
be ignored, and Iniquity will move onto the next command set.
Wx If the current day of the week is equal to 'x' (x = 0 to 6,
Sunday is 0), then the ACS code will return true, if it returns
false Iniquity will ignore all remaining information in the
current command set, and continue on to the next command set.
Xx A user must be in file conference 'x' in order for the ACS code
to return true, when it returns a false response it will ignore
all information in the current command set and move on to the
next command set.
Yxxxx At least 'xxxx' minutes from midnight has to have passed in
order for this to be true, if Iniquity returns a false response
then all information in the current command set will be ignored,
and Iniquity will move onto the next command set.
Z To be true, a user's post/call ratio must be greater then or
equal to his/her security level requirements, if Iniquity returns
a false response all information in the current command set will
be ignored and Iniquity will move on to the next command set.
Iniquity's access condition parser allows logical statements much like
those found in many popular programming languages. The following logical
operators may be used when using ACS expressions:
! This Logical NOT will inverse any expression that follows the
operator, if the expression would normally have returned true, it
will now return false.
& This Logical AND is used to combine two expression, thus making two
requirements needing to be true, not just one.
| This Logical OR creates an expression that uses either side of the
operator. If one side or the other returns true, then the expression
is true.
( ) These operators can be used to group sets of expression creating a
complex ACS expression, if the entire expression has a return values
of true, then execution is continued for the current command set, if
the overall result of the expression returns false then all is
ignored for the current command set and Iniquity moves on to the next
command set.
The following is a couple of examples for ACS expressions that can be
used in most situations:
S100|(S50&A18) Requires that either the user has an SL of at least 100
or that the user has an SL of at least 50 and is at
least 18 years of age.
!s51|(u1&=) Requires that the user has an SL of 50 or LESS, or that
he/she is logged on from the local console as user number
1 (Usually the SysOp).
access_condition_system_acs_codes.txt · Last modified: by admin
