Features
AEGIS/cgi includes all the regular features of AEGIS,
including the AEscript Program Language, and adds Internet-specific extensions such as:
- Automatic HTML formatted output: output of PRINT function calls
is automatically formatted as standard web text
- Templated output, called FlyPrinting, allows output pages to
be designed using your favourite HTML design tool, then have data values
dropped into the holes on-the-fly as the form is sent back
as output to the browser
- A powerful Session Management facility, allowing serialized
atomic interactions to be threaded together into a cohesive application
- Session Security Keys allow encrypted validation (with user
defined time-outs) that one action is properly invoked by a previous trusted
script
- Easy access to URL and Form Variables: all CGI inputs appear
in the AEGIS variable namespace
- Easy access to CGI Variables including the Browser and Referer
headers
Session Management
One of the most difficult tasks in building CGI applications is the
atomicity of each interaction. A single HTML form or page leads to
a CGI script, which then produces more HTML output. However, that's
only one interaction -- and that's all that a standard CGI tool
provides you. There's no way to link the next action into it, and
a true application is not just a single screen -- it's a
cohesive network of menus, screens and reports, all building on the
processing completed by previous programs in the application suite.
This is where the Session Management features in AEGIS/cgi
transform an ordinary CGI program into an extraordinary application building
block. A call to the SESSION() system function returns a unique,
time-limited, encrypted security key, which can be passed back in the
HTML output, usually as a hidden form variable. This key is
presented to the next CGI script, which reads it, validates it and
decodes it, to ensure that the time limit is honoured and the originating
session was valid.
This is further enhanced by Session Variable Persistence. Any
AEGIS variable value can be saved to the Session Context.
The variable will be permanently associated with the unique session key,
and any subsequent script which references that key will automatically
have access to all saved variable values. If that script generates
another session key for future use, those variables are maintained
in the new session context as well.
These features solve the most difficult problem in CGI Application Development:
how to knit each single script together into a cohesive application. FOR
INSTANCE: your users can log in once, at the beginning of their
session, and the results of that login are securely saved to the session
context. Each subsequent script is assured that the information it receives is valid and current; in other words, that the user has properly logged on. As
users navigate through the application, the common information about the
user and what they are doing travels with them, from form to form and from
script to script. All without cookies, time-consuming database lookups,
or passing a zillion variables on the URL line (a significant security risk
for hacking and the disclosure of unwanted secrets)!
Session Management can transform a simple web form into a powerful
application, made possible through AEGIS/cgi 's powerful,
rich environment. Try it today - once you experience the power, you'll
never write Perl or shell scripts again!