RTP Series - RTP42
RTP Series - RTP51
Reader's Clinic - AREV Runtime
@ATTACK - @PDisk.On
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
AREV Comes to Czechoslovakia Les Palenik, Cosmotron Systems
SecureUser
VERBatim - V25
@ATTACK - @Files.System
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
REVMEDIA Revisted
Reader's Clinic - Screen Width
VERBatim - V41
Window or Not ?
Vroom - Window Processing
QTIPS - Window Symbol Tables
VROOM - Window Processing II
@ATTACK - @HW
Uncommon Knowledge - WC_Reset%
Reader's Clinic - Related Windows
Window or Not?
Reader's Clinic - Scribe Replace Processes in Window
Soft Windows
QTIPS - Window Bug and Debugging Window Bug
Overlapping Windows And Window Menus
QTIPS - New Catalyst Option
QTIPS - Collectors on the fly
QTIPS - Blank Menus in Windows
QTIPS - Moving Objects the EASY way.
QTIPS - DOS File Names
DOS Interfacing (Part II)
VERBatim - V116
@ATTACK - @Pri.File
@ATTACK - @Rollout.File
File Variables
How Indexes Are Updated
Index Record Layouts
QTIPS - File Variable of File In SELECT Statement
QTIPS - Amending non-Attached Files
LINEAR HASH FILE STRUCTURES - Part 1
Index Flush
QTIPS - File Handle Structure
Securing TCL Access
Version 3 Technical Highlights - Securing Accounts
Prompt Help
Reader's Clinic - Scribe Replace Processes in Window
Reader's Clinic - Functions and Subroutines
Argument passing - Subroutines and Functions - Mike Pope
Prompt Help
VERBatim - V6
QTIPS - BASIC Options
The End of the Line - Mike Pope and Hal Wyman
2.1 Highlights
REVMEDIA Revisited
SecureUser
Securing TCL Access
@ATTACK - @Privilege
Securing TCL Access
Uncommon Knowledge - WC_Valid%
V119 - Part I
V119 - Part II
VERBatim - V121
Utility Diskette # 3 - Part I
Reader's Clinic - Incorrect Indexes
Vroom
RTP Series - RTP20
RTP Series - RTP12
Form.List.S
VERBatim - V5
@ATTACK - @Last.Select.Process
@ATTACK - @Save.Select
QTIPS - File Variable of File In SELECT Statement
QUERY.SUB
REVMEDIA Revisited
QTIPS - Extended Select Syntax
Spindex - A Review
Spindex vs BondTRV
REVMEDIA Revisited
QTIPS - Replacing GAS.BAR routine during PERFORM "SELECT"
QTIPS - Extended Select BY
QTIPS - EasyWriter
QTIPS - MFS - Select.Index
Merge Processor
VERBatim - V6
QTIPS - /MERGE/
QTIPS - Merge Shortcuts
VERBatim - V1
Version 3 TCL Subroutines - Saving Lists
VERBatim - V2
Version 3 TCL Subroutines - Getting Lists
Bugs and PCs - Indexing 01 vs 1
RTP Series - RTP33
REVMEDIA Revisted
@ATTACK - @Modal
QTIPS - Command Line Options
QTIPS - Invalid Code and Command
QTIPS - Code/Command Help
Utility Diskette # 4
Reader's Clinic - Page Marks in Windows

RevMedia FKB

DocumentV1I9A20
TitleSecuring TCL Access
KeywordsTCL
SECURE
@PRIVILEGE
WC_VALID%
WINDOW_COMMON%
TextOne of the most powerful features of AREV is TCL Therein lies both its
usefulness and its dangerousness Giving users TCL access is something that
I have always counselled against as it is so difficult to ensure that they
do not do anything to destroy the system However here is a technique that
makes this concern a thing of the past

In the AREV environment TCL is a window like any other window stored in
the COMMANDS file Thus by painting the window we can modify the behaviour
and characteristics of TCL To secure TCL all that is required is a Post
Process on the TCL prompt that checks the user's entry and privilege level
to ensure that they are not attempting to do something that we have
explicitly forbidden them FROM doing The ways in which this could be
implemented are many fold but one way is shown below

SUBROUTINE SECURE TCL
$INSERT INCLUDE WINDOW_COMMON%
IF @PRIVILEGE = 0 THEN
*
* As "Super User" permit anything
*
WC_VALID% = 1
END ELSE
*
* Only allow the following
*
OK = "LIST SORT SELECT MERGE SAVELIST SAVE LIST GETLIST GET LIST"
FW = WC_IS%[1 " ")
WC_VALID% = 0
LOCATE FW IN OK USING " " SETTING POS THEN
*
* In allowed list so let through
*
WC_VALID% = 1
END ELSE
*
* See if one of our catalogued routines is so allow it through
* Substitute the name of your BP file for BP
*
VOC REC = XLATE("VOC" FW "" "X")
IF VOC REC<1> = "RBASIC" THEN
IF VOC REC<3> = "BP" THEN
WC_VALID% = 1
END
END
END
END
IF WC_VALID% ELSE
CALL MSG("Invalid Command %B%" "T1" "" "")
END
RETURN


(Volume 1 Issue 9 Page 10)
[revmedia/copyrigh.htm]

Page last modified: 30/01/03