After returning to the Startup menu, you should now select User Editor (UEDIT). After loading UEDIT from the disk, it will attempt to locate a file called USERLOG. Since it won't be able to find it (you haven't made one yet), the program will create a new one and write some needed information inside that file. After your file has been created, a menu similar to that in the configuration editor will appear. It looks like this: Next User Next New User Add New User Delete User Last User Edit User Print User Validate User Goto User Save User Search Userlog Quit Editor Manuevering around UEDIT is very similar to CEDIT. It does have one difference, however. You now have use of all four arrow keys to select a menu option. This is because the menu options appear both horizontally and vertically. Select ADD NEW USER from the menu. This will allow you to place yourself in the user database. Upon pressing {RETURN}, the bottom portion of the screen will display several fields (items) of which the database is consisted. Each field will have a "dummy" response. This is the "heart" of your system. You can restrict each individual user by using UEDIT to change their attributes. Let's create your account now. Select USER NAME from the list of choices. You should now enter your name. You can either enter a your normal name or a psuedonym, such as SYSOP. Once you have entered your name correctly, select SYSTEM STATUS. The SYSTEM STATUS information is numeric. It can be a number from zero to four. The differences in the numbers are as follows: 0. New user, not yet validated 1. A validated user 2. Deleted user. The account is no longer active 3. A locked-out user. Priviledges are revoked 4. A system operator You will want to set your account status to 4. Now change the location to either the city and state you are located in, or something such as the name of your BBS. For your phone number, change it to the number you will be using to accept phone calls. This is not necessary, however. For PASSWORD, enter a word or phrase which AppleNET will use to identify you. You will need this password every time you use the BBS program (either locally or remotely). The SCREEN COLUMNS setting will already be at 80, so there is no need to change it. Set your security level to 999. Set your FlagSet to "XXXXXXXXXX" Change your MIN/DAY LIMIT to 999. Press the right-arrow key to move to the second column, then select CARBON COPY. Enter "Y" for Yes. Select FILE ENCLOSURES and enter "Y" for Yes. Make sure that everything you've entered is correct, then press {ESC}. This will return you to the main menu (the information you entered is still in memory). Now select SAVE USER. The program will then save your account to disk. This is all you need to do to create your account. What follows is a description of each option in the main menu. NEXT USER will move to the subsequent user in the user database. You can see which user is currently loaded by looking at the information directly below the main menu box (the long, highlighted bar). If you have already loaded the last entry in the list, or if there are no other entries to load, the program will emit a beep. LAST USER will move sequentially backwards in the user list. For instance, if the currently loaded user is number 10, it will load number 9. GOTO USER will allow you to jump quickly to an account. To do so, you will be prompted for the user number to load. Type the number in and it will load the user. NEXT NEW USER will search the user database for the next new (unvalidated) user. Remember, though, that it will begin searching STARTING at the currently loaded user number and continue until it reaches the end. If you want to search the entire database, go to the first account and then begin a search. If the program finds a new user, it will display it. If not, it will emit a beep. EDIT USER will allow you to edit the user currently loaded in memory. You must have a user in memory (by using NEXT, LAST, GOTO, NEXT NEW, or SEARCH) before you can select this option. SAVE USER will save any changes or additions you make to the currently loaded user. You must have a user in memory before you can select this option. If you edit a user, you must select SAVE USER in order to permanently alter the account. ADD NEW USER will allow you to append a new account to the user database. You will need to select EDIT USER in order to change the attributes to those of the user you want to add. PRINT USER will send the currently loaded user information to the printer. Your printer interface must be in slot one, or you may use the IIgs' built-in printer port. SEARCH USERLOG will allow you to quickly find a user. When prompted, enter the full or partial name you want to find. If the name contains the characters you enter, it will display that account. For instance, if the user you want to find is named GEORGE WASHINGTON, you could either enter his full name, or enter parts of it (such as GEORGE, WASH, TON, or GEO). AppleNET will find it with no problems. One note, however. UEDIT will begin searching from the current record onward, so if you want to search the entire userlog, GOTO record #1 first, and then begin the search. DELETE USER will immediately write to the currently loaded account. It will write a two in the SYSTEM STATUS field. VALIDATE USER will immediately write to the currently loaded account. It will write a one in the SYSTEM STATUS field. QUIT EDITOR will quit the user editor and return you to the startup program. A Discussion Of The AppleNET Security System - ---------- -- --- -------- -------- ------ Most system operators will be creating a BBS which has several levels of options. Some will be available to all users. Others will be available to the SysOp only. Still others will allow partial access. To accomodate this, AppleNET uses two items of information: the Security Level and the FlagSet. The two items work together to produce thousands of possible security settings. The security level can be best identified by an anology. Envision a stairway; a large one at that. Nine hundred and ninety nine steps, as a matter of fact. Now lets say you signify each successive step as a higher "rank", meaning step number 30 would be more important than step numbers 1 through 29. This is the way the AppleNET security works. Each user has a security level. In order for them to access any particular section of your board, they will need to MATCH or EXCEED the security level defined in that section. FlagSets are best described, as you might have guessed, as a row of flags. Now, flags may be one of two things; up or down (no half-mast flags here). A flag that is "down", or inactive, is speicified by a "-" sign. You can think of the minus sign as meaning "minus this flag". If a flag is "up", or active, it is specified by an "X". You might also remember this by the phrase "X marks the spot". There are ten of these flags in all. Here are some examples: Security Level FlagSet ============== =============== 10 -XX------- 30 -X-------- 300 -----XX--X 95 ---------- How do these two tables provide security? Well, let's say you want to set up a message board in which only certain people will be able to read and write messages (explained in the MEDIT section). You might set it up like this: MY BOARD Read Security = 10 Read FlagSet = --X---X--- Write Security = 30 Write FlagSet = -X-------- In order for a user to access this board, they will need to meet or exceed the security you've specified in "MY BOARD". Let's compare the two above tables. In the first example, it shows a user with a security level of 10 and a FlagSet of "-XX-------". Can he read or write to this board? Let's see. We can find out by making a table: Security FlagSet ============== =============== User.....10.............-XX------- Read.....10.............--X---X--- Write.....30.............-X-------- Looking at the above table, we can easily see that the user will not be able to write to this message board. Why not? Because the user has a security level of 10, whereas the write security level is set at 30. Remember, 30 would be higher on the stairway than 10 would be, so you won't even have to look at the FlagSet for further checking. What about reading? Will they be able to read messages in this message board? Well, their security levels fit inside the rule that they must either match or exceed. So far so good. Now, how about the FlagSet? Looking up, we see that the read command requires that flags number three (reading left-to-right) and number seven must be active in the user's FlagSet in order for them to gain access. We see that the user has flags two and three set, so the third flag checks out alright. If we look at the seventh user flag, we notice that it is NOT active. Thus, the check would fail, and the user would not be able to write. If the user had flag seven set (changed to "X"), they would be able to write. As you can see, security settings can tend to be a little confusing for a while, but once you grasp the concept, you will have no problems. Let's look at one other example in the form of a story problem (yes, I know, just about everyone hates story problems). Try to decide whether or not the user would be given access to this section. If a user has a security level of 35, and a FlagSet of "-XX--X-X--", and the required settings to play a game called Space Dogs are a security level of 20, and a FlagSet of "--X----X--", will they be able to play this addictive game? Did you figure it out? The answer is yes; they will be able to play the game. Again, you can make a table to check the answer: Security FlagSet ============== =============== User......35.............-XX--X-X-- Play......20.............--X----X-- It's easy to see that the user's security level is greater than what is required to play the game, and all flags that have been set in the play FlagSet match up with the flags in the user's FlagSet. User Fields And What They Mean ---- ------ --- ---- ---- ---- USER NAME is the name of the user in question. You may decide you want to require all users to use their real names, or you might want to accept "handles", or aliases. You should notify new registrants by changing the file NEWINFO.1 (see also CEDIT). SYSTEM STATUS is the status of each user. The SYSTEM STATUS information is numeric. It can be a number from zero to four. The differences in the numbers are as follows: 0. New user, not yet validated 1. A validated user 2. Deleted user. The account is no longer active 3. A locked-out user. Priviledges are revoked 4. A system operator LOCATION is the city and state in which the user is located. PHONE NUMBER is the user's voice telephone number in the form xxx-xxx-xxxx. PASSWORD is the special word or short phrase that the user is required to enter in order to be recognized by the system. Passwords may be 1 to 10 characters in length. SCREEN COLUMNS signifies how wide the user's screen is in columns. Typical screen widths are 40 and 80 columns. The system uses this number for message-entry and chatting functions. SECURITY LEVEL is a number between zero and 999. FLAGSET is a 10-character string of "X"'s or "-"'s. MIN/DAY LIMIT configures the total length of time (in minutes) the user is allowed to use the system every day. If the user expires this limit, they will have to wait until the next day in order to call back again. MIN/DAY LIMIT is a number ranging from zero to 999. If the user has a limit of zero, they will not be allowed to access the BBS. MIN/LAST DAY specifies how many minutes they have used on the last day that they called. (See also LAST CALL DATE) TOTAL MINUTES signifies the total number of minutes used since the user's account was created. (Since an accounting system is not fully included with AppleNET v1.1, the following four options will not need to be bothered with.) SURCHARGE/MINUTE is not implemented SURCHARGE CREDIT is not implemented SURCHARGE DEBIT is not implemeted UP/DOWNLOAD RATIO is not implemented UPLOADS is the total number of files the user has sent to the system since their account was created. DOWNLOADS is the total number of files the user has taken from the system since their account was created. TOTAL CALLS is the number of times the user has called the system since their account was created. LAST CALL DATE signifies the day on which the user last called the system. EXPIRATION DATE signifies the day on which the user's account will expired (see CEDIT for result of an expired account). Set this to NONE if the account is not to expire. Note, however, that the BOARD STATUS in CEDIT must be set to SUBSCRIPTION in order for this to take effect. CARBON COPY is a yes or no answer (enter a "Y" or an "N"). Answering "Y" will allow the user to send multiple copies of any message they write. FILE ENCLOSURES is a yes or no answer (enter "Y" or an "N"). Answering "Y" will allow the user to enclose (send) a file along with a message that they write. File enclosures are placed in the directory specified in CEDIT's ENCLOSURE DIRECTORY item. This ends the section on UEDIT. You should now return to the Startup program by selecting QUIT EDITOR from the menu.