59
Page 1 of 59: lccROAR-whitepaper.docx Lower Columbia College White Paper Contents Description ................................................................................................................................................................................ 2 lccROAR ................................................................................................................................................................................. 2 Topology of the program's Logic: ........................................................................................................................................... 3 Installation ................................................................................................................................................................................. 4 Front End Website ................................................................................................................................................................. 4 Back End ................................................................................................................................................................................ 5 Admin Decryption .................................................................................................................................................................. 6 IIS Tips ...................................................................................................................................................................................... 6 Portal Sets.................................................................................................................................................................................. 7 Customized URLs ....................................................................................................................................................................... 8 Flags ...................................................................................................................................................................................... 8 Examples ............................................................................................................................................................................... 9 Logic File Description/Syntax .................................................................................................................................................. 10 Logic File................................................................................................................................................................................. 11 Page Flags ............................................................................................................................................................................... 41 Thresholds............................................................................................................................................................................... 43 SQL Sets .................................................................................................................................................................................. 43 Example ............................................................................................................................................................................... 46 mySQL Sets.............................................................................................................................................................................. 46

lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 1 of 59: lccROAR-whitepaper.docx

Lower Columbia College

White Paper

Contents Description ................................................................................................................................................................................ 2

lccROAR ................................................................................................................................................................................. 2

Topology of the program's Logic: ........................................................................................................................................... 3

Installation ................................................................................................................................................................................. 4

Front End Website ................................................................................................................................................................. 4

Back End ................................................................................................................................................................................ 5

Admin Decryption .................................................................................................................................................................. 6

IIS Tips ...................................................................................................................................................................................... 6

Portal Sets .................................................................................................................................................................................. 7

Customized URLs ....................................................................................................................................................................... 8

Flags ...................................................................................................................................................................................... 8

Examples ............................................................................................................................................................................... 9

Logic File Description/Syntax .................................................................................................................................................. 10

Logic File ................................................................................................................................................................................. 11

Page Flags ............................................................................................................................................................................... 41

Thresholds............................................................................................................................................................................... 43

SQL Sets .................................................................................................................................................................................. 43

Example ............................................................................................................................................................................... 46

mySQL Sets .............................................................................................................................................................................. 46

Page 2: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 2 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example ............................................................................................................................................................................... 49

Specifying Encrypted Key Values In The Logic File ................................................................................................................. 49

Encrypting/Decrypting Values ................................................................................................................................................ 50

Example Logic File ............................................................................................................................................................... 50

Example Command Line Syntax ........................................................................................................................................... 50

Configuration File Example ..................................................................................................................................................... 50

Methods .................................................................................................................................................................................. 51

Logic File Examples ................................................................................................................................................................ 51

Front End ............................................................................................................................................................................. 51

Back End .............................................................................................................................................................................. 55

Admin Decryption ................................................................................................................................................................ 56

Wildcards In Values ................................................................................................................................................................ 56

Resources ................................................................................................................................................................................ 57

Definitions ............................................................................................................................................................................... 57

Modifications ........................................................................................................................................................................... 57

Description This document describes how to install/configure the lccROAR program.

lccROAR

was created to ask for information (like credentials, or other), verify that information against one to many validation lists, then

return records from one to many return lists.

As of 20180521, the program now also supports API responses in many format (ex: TXT, XML, etc.). In this mode, the program

can return data for digesting by programs/downloading.

Page 3: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 3 of 59: lccROAR-whitepaper.docx

Lower Columbia College

The program, supplied CSS styles, were also created to support Online Accessibility requirements, according to:

• LCC Supporting Colors, ref: http://services4.lowercolumbia.edu/internal/lccPrimarySupportingColors.htm

• LCC Branding and Style Guide, ref: https://services4.lowercolumbia.edu/info/webresources/Institutional-

Research/LCC_Brand_Style_Guide.pdf

• Web Accessibility wiki, ref: https://en.wikipedia.org/wiki/Web_accessibility

• WA Policy 188, ref:

http://ocio.wa.gov/sites/default/files/public/policies/188_Accessibility_Interim_TSB_Sub_201705_3.pdf

• W3C Multimedia Accessibility, ref: https://www.w3.org/2008/06/video-notes

Example Scenarios

• Multiple Portal Credentials

o User supplies personal information, like Student Id, Data Of Birth, then is provided credentials for multiple portals

they are allowed to log into.

• Reverse Phone Lookup

o User enters part or all of a phone number, and all Contact Records with any or all of that value are returned.

Topology of the program's Logic:

• Loads the main Logic File

• Loads global settings

• Loads each Portal Set

• Compare Portal Set Id against the one being provided, if none, lists any 'public' Portal Sets

• Display all Login Columns

[If user supplied data verified]

• Display all Return records that match criteria

An LDAP module was added that allows LDAP authentication. To keep true Tier-3 Security (i.e. separating Front End processes

from Back End), a Request/Response module also added. This new LDAP+Request/Response modules work in the following

manner:

• [Front-End] User enter credentials on a Front End web page

• [Front-End] Front End lccROAR submit a Request for validating/checking user Security Groups

• [Back-End] Processes the Request and produces a Response

• [Front-End] Parses the Response and responds to the user

Requests and Response are encrypted in-state.

Page 4: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 4 of 59: lccROAR-whitepaper.docx

Lower Columbia College

With the addition of a Request/Response module, there may be times when Admins will need to debug an issue by decrypting

either. Within lccROAR there is a module for decryption which launches the program in a Windows mode, i.e. point-click.

lccROAR runs in the following modes, depending on the use:

• Front End Website: Console Application

o (optional) Web Resource Browsing: acts as a Folder/File explorer

o See Key: lcc:portalSetReturnDataFileFlag, for value 'WebResourceBrowsing'

• Back End: Console Application

• Admin Decryption: Windows Application

Installation

Note: IIS made multiple updates that further isolates Console Applications when run through IIS, i.e. restricting access to system

environment variables which then causes Microsoft's own libraries, like DirectoryEntry and SQLConnection to not work because

it can't find values in the environment and won't allow nulls. Tired of this continuing restrictions, I installed Apache on another

server, and now everything works just fine. i.e. Apache is a lot friendlier/flexible to Console Applications.

Front End Website

• create a folder for lccROAR on a 'public' facing folder

• place the following files into that location

o index.css

o index.js

o index.xtm

▪ note: change the 'xtm' extension to the one your IIS server uses for Server Side Includes (SSI)

o index-h.css

o index-v.css

o lccROAR.js

o lccROARGlobal.js

o logo_web.png

▪ note: change the graphic to your logo

o recommendation: create a sub-folder called PortalSets, and then a sub-folder in that folder for each Portal Set.

This will allow organizing of each Portal Set.

Page 5: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 5 of 59: lccROAR-whitepaper.docx

Lower Columbia College

• create a Logs folder for lccROAR in a 'private' (not public accessible) location

o with permissions to read/write for the website user

• inside the Logs folder, create a sub-folder 'thresholds'

o note: this is to keep track of Thresholds

• create a Data folder for lccROAR in a 'private' (not public accessible) location

• with permissions to read only for the website user

o recommendation: create a sub-folder called PortalSets, and then a sub-folder in that folder for each Portal Set.

This will allow organizing of each Portal Set.

• place the following files into that location

o lccROAR-logic.txt (see how to create this file below)

o body.txt

o header1.txt

o topper1.txt

o body.body

o footer1.txt

• place the lccROAR.exe in your 'scripts' folder

• create a lccROAR.exe.config file and place it in the same folder (see Configuration File Example section)

After you have created your Logic File, Configuration file, finished the Installation steps above, go to your website URL. The

program should return the Portal Sets configured. See the Log for any errors/issues.

Back End

• create a folder for lccROAR on a 'non-public' private folder

• create a Logs folder for lccROAR Back End in a 'private' (not public accessible) location

o with permissions to read/write for the internal account running lccROAR

• place the following files into that location

o lccROAR-logic-backEnd.txt (see how to create this file below)

o lccROAR.exe

If you store the Logic Files for the Front End and Back End in the same folder, you will need to name them differently, we

recommend:

• [Front End] : lccROAR-logic.txt

• [Back End] : lccROAR-logic-backEnd.txt

Page 6: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 6 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Run the program with the following syntax:

lccROAR.exe lcc:logicPath lccROAR-logic-backEnd.txt

This will launch the Console Application version.

Since this should always be running for LDAP to function, we recommend using lccServiceWrapper to wrap this into a Service.

When the server restarts, lccServiceWrapper will automatically launch lccROAR. Though you could launch lccROAR back end

with any other process, i.e. Task Scheduler, batch file, etc. that can run a Console Application.

Admin Decryption

• create a local folder for Admin use (can be on any system) and place the following files into that location

o lccROAR-logic-decryptRequestsResponses.txt (see how to create this file below)

o lccROAR.exe

Run the program with the following syntax:

lccROAR.exe lcc:logicPath lccROAR-logic-decryptRequestsResponses.txt

This will launch the Windows version.

IIS Tips

You may have to configure additional settings on your IIS. Depending on the environment you have set-up. These are some tips

on those configurations.

• Go to IIS

• Click: [Server name]

o Click: ISAPI and CGI Restrictions

▪ Click: Open Feature

▪ Click: Add

▪ Click: ... (and choose the lccROAR.exe)

▪ Click: Open

▪ Check: Allow extension path to execute

▪ Click: Ok

o .

o Click: Handler Mappings

Page 7: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 7 of 59: lccROAR-whitepaper.docx

Lower Columbia College

▪ Click: CGI-exe

• Click: Edit Feature Permissions

• Check: Read, Script and Execute

• Click: Ok

• Click: Edit

• Click: Request Restrictions

• Click: Access

• Choose: Execute

Portal Sets

Portal Sets are sets of settings to define a Portal. The settings help define the following:

• what log-in columns will be used

• what return columns will be displayed

• what adhoc code will be used

For each Portal you wish to define, start with the key 'lcc:portalSetId'. This tells the program that the settings from that point

forward are for that portal, until it finds this key again.

Each Portal Set should have the following minimum keys:

• lcc:portalSetId

• lcc:portalSetTitle

• lcc:portalSetLoginSubmitTitle

• lcc:portalSetLogInPromoPath

• lcc:portalSetLoginColumn

One of these for each Log In Column

• lcc:portalSetValidateDataFile

One of these for each file used to Validate the user values

o lcc:portalSetValidateDataFileDelimiter

• lcc:portalSetReturnDataFileReturnAgainst

One of these for each Log In column you want to check against a return column

o lcc:portalSetReturnDataFileDisplayColumnsTitle

o lcc:portalSetReturnDataFileDisplayColumnsEmptyMessage

• lcc:portalSetReturnDataFileDisplayColumn

Page 8: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 8 of 59: lccROAR-whitepaper.docx

Lower Columbia College

One of these for each return column you want to display

Customized URLs

You can create customized URLs to:

• auto open a specific Portal Set

• only return specific Return Data sets within a Portal Set

The flags that can be provided in a URL are below. They can be in any order.

Flags

lccSMethod (mandatory, one per URL)

Provides the method for the program.

See the Methods section.

Syntax: lccSMethod=[...]

Example: lccSMethod=portal

Example #2: lccSMethod=portalDemo

lccSSetId (optional, one per URL)

Provides the Portal Set Id.

Syntax: lccSSetId=[...]

Example: lccSSetId=portalsCredentials

lccSSetReturnId (optional, one per URL)

Provides the Return Data Id.

This value can contain multiple Ids, separated by commas.

Syntax: lccSSetReturnId=[...]

Example: lccSSetReturnId=2

Page 9: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 9 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example #2 (multiple):

lccSSetReturnId=1,3

lccSLoginPortalKey (optional, one per URL)

Provides the Login Key for a Portal Set defined with a Key. If not provided, the user will need to manually enter.

Syntax: lccSLoginPortalKey=[...]

Example: lccSLoginPortalKey=123

lccSOrientation (optional, one per URL)

Overrides the default orientation for a Portal Set. If the user selects an Orientation, their selection overrides this key.

Syntax: lccSOrientation=[...]

Example: lccSOrientation=123

lccSResponseMode (optional, one per URL)

Specifies the response mode.

The specific portal Logic File must authorize API mode. See key 'lcc:portalSetFlag' and values

'APIResponseModeAuthorized', 'APIResponseFormat'.

Valid Values

• API : returns data in an API format (not for browser/user friendly format)

Syntax: lccSResponseMode=[...]

Example: lccSResponseMode=API

lccAPIColFilter/# (optional, one to many per URL)

If portal us accessed in API mode, this key allows filtering of the data.

If 'lccAPIColFilter' used without any column #, then all columns are searched.

If you want to search a specific column, use that column #.

The search is an 'AND' search, all filters must be found.

Page 10: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 10 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lccAPIColFilter=[...]

Example: lccAPIColFilter=security

Example #2 (multiple):

lccAPIColFilter=security&lccAPIColFilter3=smith

Examples

Default : will list any 'public' Portal Sets

https://ourcollege.edu/scripts/lccROAR.exe

Pull Up Portal Set 'ourPortal'

https://ourcollege.edu/scripts/lccROAR.exe?lccSMethod=portal&lccSSetId=ourPortalSet

Pull Up Portal Set 'ourPortal', and only return data from Return Id '2'

https://ourcollege.edu/scripts/lccROAR.exe?lccSMethod=portal&lccSSetId=ourPortalSet&lccSSetReturnId=2

Pull Up Portal Set 'ourPortal', and return data from Return Ids '1' and '3'

https://ourcollege.edu/scripts/lccROAR.exe?lccSMethod=portal&lccSSetId=ourPortalSet&lccSSetReturnId=1,3

Logic File Description/Syntax

A Logic File is a Tab delimited text file. Any lines not recognized as a valid Key/Value pair, will be ignore and can be used as

remarks/other.

The Logic File uses the syntax.

Syntax: [Key] [tab] [Value] … [tab] [Value]

Example: lcc:key value

Any extra tabs in a line after the expected ones are considered remarks and will be ignored. This is a nice way to document

specific Key settings (see Log Levels in the Logic File example(s) for reference). Also, if you place a tab before a line, that will

essentially make it a remark and will be ignored, which makes using/not using logic without removing quicker.

Any line not starting with an expected key is ignored, which makes placing remarks/formatting the logic easy.

Page 11: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 11 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Logic File

lcc:debugIP (optional, one to many per Logic File)

Supported modules: Front End

Specifies IPs for use as Debug Machines. If more than one IP required, use multiple lines.

Debug Mode is used for debugging the program. Error messages are more detailed. See key 'lcc:debugLevel' for

setting output types.

Syntax: lcc:debugIP [tab] [..IP..]

Example: lcc:debugIP 123.123.123.123

Example #2 (multiple):

lcc:debugIP 123.123.123.123

lcc:debugIP 231.231.231.231

lcc:adminIP (optional, one to many per Logic File)

Supported modules: Front End

Specifies IPs for use as Admin Machines. If more than one IP required, use multiple lines.

Admin Mode gives access to all portals.

Syntax: lcc:debugIP [tab] [..IP..]

Example: lcc:debugIP 123.123.123.123

Example #2 (multiple):

lcc:debugIP 123.123.123.123

lcc:debugIP 231.231.231.231

lcc:logPath (mandatory, one to many per Logic File)

Supported modules: Front End, Back End, Admin Decryption

The path/root name of the Log File. The program will place the '.log' extension automatically and will append a

Year/Month date.

Page 12: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 12 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lcc:logPath [tab] [..Path..]

Example: lcc:logPath e:\ourLogs\lccROAR\lccROAR

lcc:loadSettingsFromFile (optional, one to many per Logic File)

Supported modules: Front End, Back End, Admin Decryption

Pulls Logic File settings from another path and inserts it into the current Logic File settings. This is handy if you want to

place sections into their own files, like Portal Sets, etc.

For example, if you main Logic File has:

...

lcc:portalSetId ourPortal123

lcc:portalFlag flag1 value1

lcc:portalFlag flag2 value2

lcc:portalFlag flag3 value3

You could change to:

...

lcc:portalSetId ourPortal123

lcc:loadSettingsFromFile e:\folder\portalSets\portal123-logic.txt

Then in the 'portal123-logic.txt' file, you could have:

lcc:portalFlag flag1 value1

lcc:portalFlag flag2 value2

lcc:portalFlag flag3 value3

Syntax: lcc:loadSettingsFromFile [tab] [..Path..]

Example: lcc:loadSettingsFromFile e:\folder\portalSets\portal123-logic.txt

lcc:method (mandatory, one to many per Logic File)

Supported modules: Front End, Back End, Admin Decryption

The method the program will run in.

Syntax: lcc:logPath [tab] [..Path..]

Page 13: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 13 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example: lcc:logPath e:\ourLogs\lccROAR\lccROAR

lcc:heartbeatSeconds (optional, one per Logic File)

Supported modules: Back End

Shows a heartbeat every # seconds.

Syntax: lcc:heartbeatSeconds [tab] [..#..]

Example: lcc:heartbeatSeconds 60

lcc:abortPath (optional, one per Logic File)

Supported modules: Back End

Supplied path to an abort file. If the file is found with content, the Back End will abort and the file will be deleted.

Syntax: lcc:abortPath [tab] [..Path..]

Example: lcc:abortPath .\lccROAR-backEnd-abort.txt

lcc:pauseBetweenRequests (optional, one per Logic File)

Supported modules: Back End

How much delay between each request.

Syntax: lcc:pauseBetweenRequests [tab] [..#..]

Example: lcc:pauseBetweenRequests 1

lcc:debugLevel (optional, one to many per Logic File)

Supported modules: Front End, Back End, Admin Decryption

Specifies what debug information will be provided to the Debug IP. Provide a new line for each level desired.

Debug Levels

1 logic name/values

2 display query name/values

3 display post name/values

5 environment name/values

Page 14: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 14 of 59: lccROAR-whitepaper.docx

Lower Columbia College

6 validate information

7 validate return information

8 show link to direct Portal Set, in debug mode

9 logic name/values to screen

10 LDAP

11 Response not found

12 Response key

13 Keep Response Files

14 Keep Requests Files

15 mySQL

16 Processing Requests Folder

Syntax: lcc:debugLevel [tab] [..#..]

Example: lcc:debugLevel 1

Example #2 (multiple):

lcc:debugLevel 1

lcc:debugLevel 3

lcc:thresholdsPath (mandatory, one per Logic File)

Supported modules: Front End

Where to track Thresholds.

See section "Thresholds" for details on Thresholds.

Syntax: lcc:thresholdsPath [tab] [..Path..]

Example: lcc:thresholdsPath f:\ourLogs\lccROAR\thresholds

lcc:sitesIndexTitle (mandatory, one per Logic File)

Supported modules: Front End

When no Portal Set id is provided by the URL/user, any 'public' Portal Sets will be displayed as a link to each. This key

sets the Title above those links.

Syntax: lcc:sitesIndexTitle [tab] [...]

Example: lcc:sitesIndexTitle Sites

Page 15: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 15 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:programPath (mandatory, one per Logic File)

Supported modules: Front End

What path on the website will information be submitted.

Syntax: lcc:programPath [tab] [..Path..]

Example: lcc:programPath /scripts/lccROAR.exe

lcc:requestsPath (optional, one per Logic File)

Supported modules: Front End, Back End

When using LDAP, what path to use for creating requests.

Request files are created by the Front End and processed by the Back End. The Back End then produces a Response file.

By default, requests are deleted after processing. You can skip deleting request files through the lcc:debugLevel key.

Syntax: lcc:requestsPath [tab] [..Path..]

Example: lcc:requestsPath F:\securedFolder\webData\lccROAR\requests

lcc:requestsArchivePath (optional, one per Logic File)

Supported modules: Back End

When using LDAP, what path to use for archiving requests.

If this key supplied, you must created a sub-folders in this path for:

• completed

• failed

Request files are created by the Front End and processed by the Back End. The Back End then produces a Response file

and if the lcc:debugLevel set, will archive requests.

By default, requests are deleted after processing. You can skip deleting request files through the lcc:debugLevel key.

Syntax: lcc:requestsPath [tab] [..Path..]

Page 16: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 16 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example: lcc:requestsPath F:\securedFolder\webData\lccROAR\requests

lcc:responsesPath (optional, one per Logic File)

Supported modules: Front End, Back End

When using LDAP, what path to use for creating responses.

Response files are created by the Back End and processed by the Front End.

By default, responses are deleted after processing. You can skip deleting response files through the lcc:debugLevel

key.

Syntax: lcc:responsesPath [tab] [..Path..]

Example: lcc:responsesPath F:\securedFolder\webData\lccROAR\responses

lcc:decryptRequestsResponsesPath (mandatory, one per Logic File)

Supported modules: Admin Decryption

This provides the path where the following exist:

• Requests

• RequestsCompleted

• RequestsFailed

• Responses

Syntax: lcc:decryptRequestsResponsesPath [tab] [..Type..] [tab] [..Path..]

Example: lcc:decryptRequestsResponsesPath Requests F:\securedFolder\webData\lccROAR\requests

lcc:decryptRequestsResponsesPath RequestsCompleted F:\securedFolder\webData\lccROAR\requestsArchive\completed

lcc:decryptRequestsResponsesPath RequestsFailed F:\securedFolder\webData\lccROAR\requestsArchive\failed

lcc:decryptRequestsResponsesPath Responses F:\securedFolder\webData\lccROAR\responses

lcc:globalEncryptionHash (optional, one per Logic File)

Supported modules: Front End, Back End, Admin Decryption

Hash value supplied for encryption/decryption. Must be used with keys ‘lcc:sourceEncryptionSaltKey’ and

‘lcc:sourceEncryptionVIKey’.

Page 17: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 17 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lcc:globalEncryptionHash [tab] [...]

Example: lcc:globalEncryptionHash s0m3C00lPhr@$e

lcc:globalEncryptionSaltKey (optional, one per Logic File)

Supported modules: Front End, Back End, Admin Decryption

Hash value supplied for encryption/decryption. Must be used with keys ‘lcc:sourceEncryptionHash’ and

‘lcc:sourceEncryptionVIKey’.

Syntax: lcc:globalEncryptionSaltKey [tab] [...]

Example: lcc:globalEncryptionSaltKey s0m3C00lPhr@$e

lcc:globalEncryptionVIKey (optional, one per Logic File)

Supported modules: Front End, Back End, Admin Decryption

Hash value supplied for encryption/decryption. Must be used with keys ‘lcc:sourceEncryptionHash’ and

‘lcc:sourceEncryptionSaltKey’.

Syntax: lcc:globalEncryptionHash [tab] [...]

Example: lcc:globalEncryptionHash s0m3C00lPhr@$e12

lcc:securityKey (optional, one per Logic File)

Supported modules: Front End, Back End, Admin Decryption

If using encryption, this key must be supplied, as it garbles the values when converted to/from Base16 characters (i.e.

ABCDEFGHIJKLMNOP). The value can be anything.

Syntax: lcc:securityKey [tab] [...]

Example: lcc:securityKey our cool security key

lcc:maxFilterSize (optional, one per Logic File)

Supported modules: Back End

By default, the program will only accept up to 50 character filter values. This key will override that size.

Page 18: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 18 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lcc:maxFilterSize [tab] [..#..]

Example: lcc:maxFilterSize 100

lcc:LDAPServer (optional, one to many per Logic File)

Supported modules: Back End

Specifices LDAP servers for use on accounts marked as Type 'LDAP'. If more than one LDAP server is available, use

multiple lines.

Syntax: lcc:LDAPServer [tab] [..Server/Domain Context..]

Example: lcc:LDAPServer ourLDAPServer/dc=ourcollege,dc=edu

Example #2 (multiple):

lcc:LDAPServer ourLDAPServer1/dc=ourcollege,dc=edu

lcc:LDAPServer ourLDAPServer2/dc=ourcollege,dc=edu

lcc:LDAPUserId (optional, one per Logic File)

Supported modules: Back End

Specifices LDAP User Id for the connection.

Syntax: lcc:LDAPUserId [tab] [..Id..]

Example: lcc:LDAPUserId ourUser

lcc:LDAPUserPassword (optional, one per Logic File)

Supported modules: Back End

Specifices LDAP User Password for the connection.

Syntax: lcc:LDAPUserPassword [tab] [..Id..]

Example: lcc:LDAPUserPassword ourPassword

lcc:orientation (optional, one per Logic File)

Supported modules: Front End

Page 19: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 19 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Sets the orientation of the result columns for all Portal Sets. The default is vertical.

Each Portal Set can override this settings with the key "lcc:portalSetReturnDataFileDisplayColumnsOrientation".

The user can override this settings with the Adhoc choosing of Vertical or Horizontal through the web page interface.

Valid Values

Horizontal

Syntax: lcc:orientation [tab] [...]

Example: lcc:orientation Horizontal

lcc:webResourcesPath (mandatory, one per Logic File)

Supported modules: Front End

What path on the website will web resources be found.

Syntax: lcc:webResourcesPath [tab] [..Path..]

Example: lcc:webResourcesPath /lccROAR

lcc:pageHTMLAttributes (optional, one per Logic File)

Supported modules: Front End

What attributes will be added to the HTML command of all web pages.

We suggest using: lang="en"

as this specifies what language the page is coded, and is used for Web Accessibility.

Syntax: lcc:pageHTMLAttributes [tab] [...]

Example: lcc:pageHTMLAttributes lang="en"

lcc:pageCSS (optional, one to many per Logic File)

Supported modules: Front End

What Cascading Style Sheet (CSS) file(s) will be embedded in the HEAD of all web pages.

Page 20: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 20 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lcc:pageCSS [tab] [...]

Example: lcc:pageCSS index.css

Example #2 (multiple):

lcc:pageCSS index.css

lcc:pageCSS index2.css

lcc:pageCSSHorizontal (optional, one to many per Logic File)

Supported modules: Front End

What Cascading Style Sheet (CSS) file(s) will be embedded in the HEAD of all web pages 'if' the page is user's window is

Horizontal.

Syntax: lcc:pageCSSHorizontal [tab] [...]

Example: lcc:pageCSSHorizontal index-h.css

Example #2 (multiple):

lcc:pageCSSHorizontal index-h.css

lcc:pageCSSHorizontal index2-h.css

lcc:pageCSSVertical (optional, one to many per Logic File)

Supported modules: Front End

What Cascading Style Sheet (CSS) file(s) will be embedded in the HEAD of all web pages 'if' the page is user's window is

Vertical.

Syntax: lcc:pageCSSVertical [tab] [...]

Example: lcc:pageCSSVertical index-v.css

Example #2 (multiple):

lcc:pageCSSVertical index-v.css

lcc:pageCSSVertical index2-v.css

lcc:pageScript (optional, one to many per Logic File)

Supported modules: Front End

What Javascript script paths will be embedded in the HEAD of all web pages.

Syntax: lcc:pageScript [tab] [...]

Page 21: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 21 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example: lcc:pageScript index.js

Example #2 (multiple):

lcc:pageScript index.js

lcc:pageCSS index2.js

lcc:pageTitle (mandatory, one per Logic File)

Supported modules: Front End

What Title is used in the HEAD of all web pages.

Syntax: lcc:pageTitle [tab] [...]

Example: lcc:pageTitle lccROAR: Retrieve Online Authorized Records

lcc:pageHeader (optional, one to many per Logic File)

Supported modules: Front End

What file contents will be inserted in the HEAD of all web pages.

Syntax: lcc:pageHead [tab] [...]

Example: lcc:pageHead f:\data\lccROAR\header1.txt

Example #2 (multiple):

lcc:pageHead f:\data\lccROAR\header1.txt

lcc:pageHead f:\data\lccROAR\header2.txt

lcc:pageTopper (optional, one to many per Logic File)

Supported modules: Front End

What file contents will be inserted in the top of the BODY of all web pages.

Syntax: lcc:pageTopper [tab] [...]

Example: lcc:pageTopper f:\data\lccROAR\topper1.txt

Example #2 (multiple):

lcc:pageTopper f:\data\lccROAR\topper1.txt

lcc:pageTopper f:\data\lccROAR\topper2.txt

lcc:pageBody (mandatory, one per Logic File)

Page 22: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 22 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Supported modules: Front End

What file contents will be used as the BODY of all web pages.

Syntax: lcc:pageBody [tab] [...]

Example: lcc:pageBody f:\data\lccROAR\body.txt

lcc:pageFooter (optional, one to many per Logic File)

Supported modules: Front End

What file contents will be inserted in the footer of the BODY of all web pages.

Syntax: lcc:pageFooter [tab] [...]

Example: lcc:pageFooter f:\data\lccROAR\footer1.txt

Example #2 (multiple):

lcc:pageFooter f:\data\lccROAR\footer1.txt

lcc:pageFooter f:\data\lccROAR\footer2.txt

lcc:portalSetId (mandatory, one to many per Logic File, one per Portal Set)

Supported modules: Front End

The start of settings for a Portal Set. Each of these keys must have a unique value. But, the value can be anything.

Syntax: lcc:portalSetId [tab] [..Id..]

Example: lcc:portalSetId PortalsCredentials

lcc:portalSetFlag (optional, one to many per Logic File, one to many per Portal Set)

Supported modules: Front End

Sets flags for a portal.

Valid Flags

• APIResponseFormat : what format to return API responses in.

Valid Values

▪ CSV : returns in CSV format

Page 23: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 23 of 59: lccROAR-whitepaper.docx

Lower Columbia College

▪ HTM : returns in HTML format

▪ JSON : returns in JSON format

▪ TXT : returns in tab delimited format

▪ XML : returns in XML format

▪ YAML: return in YAML format

o Example: lcc:portalSetReturnDataFileFlag APIResponseFormat TXT

• APIResponseFormat: Sets what file type will be downloaded when using flag 'APIDownloadOption'.

Valid Values:

• CSV

• HTM

• JSON

• OpenDDL

• TXT

• XML

• YAML

Example: lcc:portalSetFlag APIResponseFormat CSV

• APIDownloadOption: Turns on the ability to download the results as a file. See flag 'APIResponseFormat' to set

what type of file format the file downloads as.

Valid Values:

▪ YES

Example: lcc:portalSetFlag APIDownloadOption YES

lcc:portalSetFlag APIDownloadOption YES

• AuthorizedIPs: Sets what IPs are authorized to use a portal. Can be one to many.

Example: lcc:portalSetFlag AuthorizedIP 123.123.123.123

• AuthorizedIPsWildcardLeft: Sets what IPs are authorized to use a portal, by the left wildcard portion. This is

helpful if you want to authorize an entire subnet. Can be one to many.

Example: lcc:portalSetFlag AuthorizedIPWildcardLeft 123.123.123.

Page 24: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 24 of 59: lccROAR-whitepaper.docx

Lower Columbia College

• Demo: Sets a Portal Set to 'demo'. If lccROAR is accessed with no Portal Id and using method 'demo', it will display

links to any Portals that are marked demo. If you set this key, this Portal Set will only show up if in demo mode.

Valid Values

o YES

• FooterOff: Prevents displaying the Footer content.

Valid Values

o YES

• MaxRecords: Sets the maximum number of records that can be shown. This also shows a Max Records box for the

user to change this value. Must be a number.

• MaxRecordsCeiling: Sets the maximum number of records ceiling that can be shown. If a MaxRecords value is

supplied by the user or logic that exceeds this value, it will be reduced to this maximum value. Handy if you want

to control the maximum records you ‘ever’ want returned.

• PortalThreshold : turns on access thresholds for accessing an entire portal. This is handy for API portals to

prevent outside API calls from swamping the server.

Valid Values

▪ YES

• PreDisplay: Shows the records immediately, before any search filters supplied. This is handy where you want

records to display when no filters needed, like statistics.

Valid Values

o YES

• Private: Sets a Portal Set to 'private'. If lccROAR is accessed with no Portal Id, it will display links to any Portals

that are public. If you set this key, this Portal Set will not show up in that index.

Valid Values

o YES

• ResponseModeAuthorized: Authorizes Response Modes.

Example: lcc:portalSetFlag ResponseModeAuthorized YES

Page 25: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 25 of 59: lccROAR-whitepaper.docx

Lower Columbia College

To activate a response mode, provide the 'lccSResponseMode' key in the URL. Then provide the response

mode type.

Valid Values

• API : will return the data in a download/single file format.

Example:

https://ourserver.edu/scripts/lccROAR.exe?lccSMethod=portal&lccSSetId=ourPortalSet&lccSResponseMo

de=API

• SearchOff: Prevents displaying the Search bar.

Valid Values

o YES

• Skip: Allows you to have settings for a Portal Set, but, have the program skip those settings. This is helpful if you

want to turn on/off Portal Sets.

Valid Values

o YES

• SubmitButtonOff: Prevents displaying the Submit content.

Valid Values

o YES

• ToolbarOff: Prevents displaying the Toolbar content.

Valid Values

o YES

• TopperOff: Prevents displaying the Topper content.

Valid Values

o YES

Syntax: lcc:portalSetFlag [tab] [..Flag Name..] [tab] [..Flag Value..]

Example: lcc:portalSetFlag Skip YES

Page 26: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 26 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example (multiple):

lcc:portalSetFlag Skip YES

lcc:portalSetFlag Private YES

lcc:portalSetWebResourceBrowsingDataType (optional, one to many per Logic File, one to many per Portal Set)

Supported modules: Front End

Sets what file types can be downloaded and what Mime-Type the file extension will be downloaded as, see Key

lcc:portalSetReturnDataFileFlag.

Mime-Types can be found in document:

mimeTypes.pdf

Syntax: lcc:portalSetWebResourceBrowsingDataType [tab] [..extension..] [tab] [..Mime Type..]

Example: lcc:portalSetWegResourceBrowsingDataType txt text/plain

Example (multiple):

lcc:portalSetWegResourceBrowsingDataType txt text/plain

lcc:portalSetWegResourceBrowsingDataType doc application/msword

lcc:portalSetWegResourceBrowsingDataType pdf application/pdf

lcc:portalSetWebResourceBrowsingIncludeFilename (optional, one to many per Logic File, one to many per Portal Set)

Supported modules: Front End

Can include certain file names. All others will be skipped.

This value can use wildcards. See the Wildcards In Values section.

Syntax: lcc:portalSetWebResourceBrowsingIncludeFilename [tab] [..filename..]

Example: lcc:portalSetWegResourceBrowsingIncludeFilename ourFile.txt

Example (multiple):

lcc: portalSetWegResourceBrowsingIncludeFilename ourFile.txt

lcc: portalSetWegResourceBrowsingIncludeFilename lcc*-logic.txt

lcc: portalSetWegResourceBrowsingIncludeFilename lcc*logic.*

lcc:portalSetWebResourceBrowsingExcludeFilename (optional, one to many per Logic File, one to many per Portal Set)

Supported modules: Front End

Page 27: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 27 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Can exclude certain file names from showing.

This value can use wildcards. See the Wildcards In Values section.

Syntax: lcc:portalSetWebResourceBrowsingExcludeFilename [tab] [..filename..]

Example: lcc:portalSetWegResourceBrowsingExcludeFilename ourFile.txt

Example (multiple):

lcc:portalSetWegResourceBrowsingExcludeFilename ourFile.txt

lcc:portalSetWegResourceBrowsingExcludeFilename lcc*-logic.txt

lcc:portalSetWegResourceBrowsingExcludeFilename lcc*logic.*

lcc:portalSetTitle (mandatory, one to many per Logic File, one per Portal Set)

Supported modules: Front End

Sets a Portal Set Title. This displays at the top of a Portal Set page.

Syntax: lcc:portalSetTitle [tab] [...]

Example: lcc:portalSetTitle Portals Credentials

lcc:portalSetPageTopper (optional, one to many per Logic File, per Portal Set)

Supported modules: Front End

What file contents will be inserted in the top of the BODY of the current portal.

Syntax: lcc:portalSetPageTopper [tab] [...]

Example: lcc:portalSetPageTopper f:\data\lccROAR\topper1.txt

Example #2 (multiple):

lcc:portalSetPageTopper f:\data\lccROAR\topper1.txt

lcc:portalSetPageTopper f:\data\lccROAR\topper2.txt

lcc:portalSetPageFooter (optional, one to many per Logic File, per Portal Set)

Supported modules: Front End

What file contents will be inserted in the bottom of the BODY of the current portal.

Page 28: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 28 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lcc:portalPageFooter [tab] [...]

Example: lcc:portalPageFooter f:\data\lccROAR\footer1.txt

Example #2 (multiple):

lcc:portalPageFooter f:\data\lccROAR\footer1.txt

lcc:portalPgeFooter f:\data\lccROAR\footer2.txt

lcc:portalSetAndOr (optional, one to many per Logic File, one per Portal Set)

Supported modules: Front End

Sets a Portal Set to display an And/Or filter option. By default, when searching multiple columns, the program performs

an 'And' search where ALL search terms must be found. Providing this key with 'Or' default to an 'Or' search and so ANY

search terms makes a record valid.

By providing this key, the user will be provided And/Or buttons that they can use to change the And/Or search option o-

the-fly.

Valid Values

• And

• Or

Syntax: lcc:portalSetAndOr [tab] [...]

Example: lcc:portalSetAndOr And

lcc:portalSetCSS (optional, one to many per Logic File/Portal Set)

Supported modules: Front End

What Cascading Style Sheet (CSS) file(s) will be embedded in the page of a specific portal.

Syntax: lcc:portalSetCSS [tab] [...]

Example: lcc:portalSetCSS portalStyles.css

Example #2 (multiple):

lcc:portalSetCSS portalStyles.css

lcc:portalSetCSS portalStyles2.css

lcc:portalSetKey (optional, one to many per Logic File, one per Portal Set)

Page 29: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 29 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Supported modules: Front End

Sets a key that must be used to access this portal.

Syntax: lcc:portalSetKey [tab] [...]

Example: lcc:portalSetKey 1234abcd

lcc:LDAPSecurityGroup (optional, one to many per Logic File, one to many per Portal Set)

Supported modules: Front End

What AD security group will be required for a user to use this portal. If more than one is supplied, any match

authenticates the user.

See key 'lcc:LDAPSecurityGroupsMustMatchAll to force a user to be a member of all defined groups.

Syntax: lcc:LDAPSecurityGroup [tab] [...]

Example: lcc:LDAPSecurityGroup CN=ourGroup1,OU=Security Groups,DC=college=edu

Example #2 (multiple):

lcc:LDAPSecurityGroup CN=ourGroup1,OU=Security Groups,DC=college=edu

lcc:LDAPSecurityGroup CN=ourGroup2,OU=Special,DC=college=edu

lcc:LDAPSecurityGroupsMustMatchAll (optional, one per Logic File)

Supported modules: Front End

If provided and 'YES', will force a user to be a member of all defined security groups.

Valid Values

• YES

Syntax: lcc:LDAPSecurityGroupsMustMatchAll [tab] [YES]

Example: lcc:LDAPSecurityGroupsMustMatchAll YES

lcc:portalSetThreshold (optional, one to many per Logic File/Portal Set)

Supported modules: Front End

Sets a Threshold.

Page 30: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 30 of 59: lccROAR-whitepaper.docx

Lower Columbia College

See section "Thresholds" for details on Thresholds.

Valid Thresholds

• Millisecond

• Second

• Minute

• Hour

• Day

Syntax: lcc:portalSetThreshold [tab] [..Threshold..] [tab] [..#..]

Example: lcc:portalSetThreshold Second 2

Example #2 (multiple):

lcc:portalSetThreshold Second 2

lcc:portalSetThreshold Minute 4

lcc:portalSetAdhocCodePath (optional, one to many per Logic File/Portal Set)

Supported modules: Front End

What file contents will be inserted in the top of the BODY of the web page for this Portal Set.

Syntax: lcc:portalSetAdhocCodePath [tab] [..path.]

Example: lcc:portalSetAdhocCodePath f:\data\lccROAR\PortalSets\PortalsCredentials\Adhoc.txt

Example #2 (multiple):

lcc:portalSetAdhocCodePath f:\data\lccROAR\PortalSets\PortalsCredentials\Adhoc.txt

lcc:portalSetAdhocCodePath f:\data\lccROAR\PortalSets\PortalsCredentials\Adhoc2.txt

lcc:portalSetLoginSubmitTitle (mandatory, one to many per Logic File, one per Portal Set)

Supported modules: Front End

What title is placed on the Log In link for this Portal Set.

Syntax: lcc:portalSetLoginSubmitTitle [tab] [...]

Example: lcc:portalSetLoginSubmitTitle Retrieve Credentials

Page 31: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 31 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:portalSetLoginInformationNotFoundMessage (optional, one to many per Logic File, one per Portal Set)

Supported modules: Front End

Replaces the "Information Provided Not Found" message if the supplied values are not found.

Syntax: lcc:portalSetLoginInformationNotFoundMessage [tab] [...]

Example: lcc:portalSetLoginInformationNotFoundMessage Retrieve Credentials

lcc:portalSetLoginPromoPath (mandatory, one to many per Logic File/Portal Set)

Supported modules: Front End

What file content will be displayed above the columns on the Log In page for this Portal Set.

Syntax: lcc:portalSetLoginPromoPath [tab] [..Path..]

Example: lcc:portalSetLoginPromoPath f:\data\lccROAR\PortalSets\PortalsCredentials\Promo.txt

Example #2 (multiple):

lcc:portalSetLoginPromoPath f:\data\lccROAR\PortalSets\PortalsCredentials\Promo.txt

lcc:portalSetLoginPromoPath f:\data\lccROAR\PortalSets\PortalsCredentials\Promo2.txt

lcc:portalSetLoginSubmitAdhocCode (optional, one to many per Logic File, one per Portal Set)

Supported modules: Front End

The Log In link normally submits to the program URL, however, this will override the action with this JavaScript code.

This is useful if you want to do your own actions/verifications on the data before it is submitted.

Syntax: lcc:portalSetLoginSubmitAdhocCode [tab] [...]

Example: lcc:portalSetLoginSubmitAdhocCode lccFSubmitAdhoc()

lcc:portalSetLoginGlobalColumn (optional, one to many per Logic File/Portal Set)

Supported modules: Front End

Proved an "(All Columns)" search box that will search all columns.

Syntax: lcc:portalSetLoginGlobalColumn [tab] [YES]

Example: lcc:portalSetLoginGlobalColumn YES

Page 32: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 32 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:portalSetLoginColumn (mandatory, one to many per Logic File/Portal Set)

Supported modules: Front End

The start of settings for a Portal Set Log In Column. Each of these keys must have a unique value. But, the value can be

anything. The '#' column should be unique and may be used in the future for referencing which column, but, the '#' is

ignored at this time. It is a good reference point for the administrator to keep track of each column #.

Syntax: lcc:portalSetLoginColumn [tab] [..#..] [tab] [..Id..]

Example: lcc:portalSetLoginColumn 1 SID

lcc:portalSetLoginColumnFlag (optional, one to many per Logic File/Portal Set/Column)

Supported modules: Front End

A set of flags that can affect how the column looks and acts.

Valid Flags

• AutoFocus YES

Will auto focus the user input to this box. Only one is valid per Portal Set

• Case-Insensitive YES

The user value will be compare regardless of the character case

• InputType

Valid Values

o Number

Force user to input numbers

o Hidden

Hide the input. This is handy if you want to check/control the value

Define what type of input is shown

• LabelPreAdhocCodePath [..Path..]

Add content before the Column Label

• LabelPostAdhocCodePath [..Path..]

Add content after the Column Label

• Maxlength [..#..]

Forces user value to a max length

Page 33: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 33 of 59: lccROAR-whitepaper.docx

Lower Columbia College

• MultiLine YES

Changes a filter box into a multi-line box. Will default to 3 lines shown, unless the flag 'MultiLineRows' set.

• MultiLineRows [..#..]

Changes how many rows are displayed in a multiline filter box.

• MultiFilters YES

Accepts multiple values in a filter box. The values can be separated by a comma or one on each line. This

flag should only be used on a single filter.

• NameInputAppend [...]

Appends content after the Column Name Label

• SuggestFormat [...]

Suggest value format to the user

• SuggestedValues [...Type...]

Produces suggested values that the user can choose from.

Valid Values:

ctcLinkTerm: produces 8 Terms worth of ctcLink Term codes.

• ThresholdMonitor YES

Adds this column to the Threshold monitor. See section "Thresholds" for details on Thresholds.

• ValuePreAdhocCodePath [..Path..]

Add content before the Column Input

• ValuePostAdhocCodePath [..Path..]

Add content after the Column Input

• ValidateAgainst [..#..]

What column this value is compared against for validation. See flag 'ValidateAgainstQuery' if you want the

validation to be handled by the query.

• ValidateAgainstQuery [..#..]

Specifies that the column comparison will be handled by the query. The program then assume, that if 'any'

value is supplied by the user, and records come back from the query, that they are a match.

• Wildcard YES

The user value can be found anywhere in the validation column

Syntax: lcc:portalSetLoginColumnFlag [tab] [..Flag..] [tab] [...]

Example: lcc:portalSetLoginColumnFlag Wildcard YES

Example #2 (multiple):

lcc:portalSetLoginColumnFlag Wildcard YES

Page 34: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 34 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:portalSetLoginColumnFlag InputType Number

lcc:portalSetValidateDataFile (mandatory, one to many per Logic File/Portal Set)

Supported modules: Front End

A path where a file contains records to validate against user values.

If you want to validate against data from a SQL source. Use a path format:

Syntax: SQL:[..SQL Set Id..]

Example: SQL:ourDatabase

If use a SQL source, see the SQL Sets section on the keys to used.

Syntax: lcc:portalSetValidateDataFile [tab] [..Path..]

Example: lcc:portalSetValidateDataFile \\server\share$\lccROAR\studentInformation.txt

lcc:portalSetValidateDataFileFlag (optional, one to many per Logic File, one to many per Portal Set, one to many per Portal Set

Validate Data File)

Supported modules: Front End

Sets flags for a portal set data file.

Valid Flags

• Encrypted: Specifies that the data is encrypted.

Valid Values

o YES

Syntax: lcc:portalSetValidateDataFileFlag [tab] [..Flag Name..] [tab] [..Flag Value..]

Example: lcc:portalSetValidateDataFileFlag Encryted YES

Example (multiple):

lcc:portalSetValidateDataFileFlag Encrypted YES

lcc:portalSetValidateDataFileFlag [..Other..] YES

Page 35: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 35 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:portalSetValidateDataFileDelimiter (optional, one to many per Logic File/Portal Set, one per Validate Data File)

Supported modules: Front End

What delimiter is used between the columns. The program defaults to Tab if one not provided.

To specify a Tab, use "[tab], else use the character.

Syntax: lcc:portalSetValidateDataFileDelimiter [tab] [..Delimiter..]

Example: lcc:portalSetValidateDataFileDelimiter ,

Example #2: lcc:portalSetValidateDataFileDelimiter [tab]

lcc:portalSetReturnDataFile (mandatory, one to many per Logic File/Portal Set)

Supported modules: Front End

A path where a file contains records to return against user values.

The Id column should be unique per file. It is used by the program to track settings.

If you want to validate against data from a SQL source. Use a path format:

Syntax: SQL:[..SQL Set Id..]

Example: SQL:ourDatabase

If use a SQL source, see the SQL Sets section on the keys to used.

Syntax: lcc:portalSetReturnDataFile [tab] [..Id #..] [tab] [..Path..]

Example: lcc:portalSetReturnDataFile 1 \\server\share$\lccROAR\studentInformation.txt

lcc:portalSetReturnDataFileFlag (optional, one to many per Logic File, one to many per Portal Set, one to many per Portal Set

Return Data File)

Supported modules: Front End

Sets flags for a portal set return data file.

Valid Flags

lcc:portalSetReturnDataFileFlag MultiFiltersSQLOR EMPLID='[lccUserCol1]'

Page 36: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 36 of 59: lccROAR-whitepaper.docx

Lower Columbia College

• Encrypted: Specifies that the data is encrypted.

Valid Values

YES

• MultiFiltersSQLOR : provides the portion of the SQL query that should be modified for mulitple filters.

For example, if you had a query:

SELECT ourCol FROM ourTable WHERE ourCol='[lccUserCol1]';

You would want the "ourCol='[lccUserCol1]' provided multiple times (one for each filter value) and combined

wiht an OR clause. And so this flag would be this value: ourCol='[lccUserCol1]'

When the search is ran by the user, and if filter values "one, two, three" provided, the query would be change

on-the-fly to this:

SELECT ourCol FROM ourTable WHERE (ourCol='one' OR ourCol='two' OR ourCol='three');

• PrependRecordNumber : shows a record #, the # is the number of the match

Valid Values

YES

• ShowLastUpdate: Show the last time the return data file was updated. Only works with files, not SQL/mySQL data.

The value supplied is the text that will show before the date/time.

• SplitRecordsTableAtPrecent: Splits how what precentage of records are shown in a column format. For example,

if you set at ".25" (25 percent), 1/4th of the records will show in four columns.

• WebResourceBrowsing : change the output into a Folder/File explorer

o See Flags:

▪ WebResourceBrowsingDataType

o See Keys:

▪ lcc:portalSetWebResourceBrowsingDataType

• WebResourceBrowsingDataType : what file extensions are valid to show (one to many)

• WebResourceBrowsingHideHiddenFiles : when showing files, will hide any marked as 'hidden' by the operating

system.

• WebResourceBrowsingDirectoryReverseOrderOnCookieTrail : instructs the program to show directories in

reverse order when the cookie trail matches this keys value

Example: lcc:portalSetReturnDataFileFlag WebResourceBrowsingDirectoryReverseOrderOnCookieTrail

/ourFolder/folder2

• WebResourceBrowsingFileReverseOrderOnCookieTrail : instructs the program to show files in reverse order

when the cookie trail matches this keys value

Example: lcc:portalSetReturnDataFileFlag WebResourceBrowsingFilesReverseOrderOnCookieTrail

/ourFolder/folder2

Page 37: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 37 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lcc:portalSetReturnDataFileFlag [tab] [..Flag Name..] [tab] [..Flag Value..]

Example: lcc:portalSetReturnDataFileFlag Encryted YES

Example (multiple):

lcc:portalSetReturnDataFileFlag Encrypted YES

lcc:portalSetReturnDataFileFlag ShowLastUpdate Last Updated:

lcc:portalSetReturnDataFileFlag [..Other..] YES

Example (multiple, Web Resource Browsing):

lcc:portalSetReturnDataFileFlag WebResourceBrowsing YES

lcc:portalSetReturnDataFileFlag WebResourceBrowsingDataType doc

lcc:portalSetReturnDataFileFlag WebResourceBrowsingDataType docx

lcc:portalSetReturnDataFileFlag WebResourceBrowsingDataType pdf

lcc:portalSetReturnDataFileDisplayColumnFlag (optional, one to many per Logic File, one to many per Portal Set, one to many

per Return Data File Display Column)

Supported modules: Front End

Sets flags for a portal return data file display column.

Valid Flags

• HideName: Hides the name of the column from the user. This is handy when you only want the value(s) displayed,

like statistics.

Valid Values

o YES

• DisplayFormat: Formats the value for display

Valid Values

o #,#: used with numbers to display it in comma format, ex: 123,456

o #.#: used with numbers to display it in decimal format, with last character after the decimal, ex: 12345.6

o #.##: used with numbers to display it in decimal format, with last two characters after the decimal, ex:

1234.56

• HighlightCell: Highlights a cell

Valid Values

Page 38: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 38 of 59: lccROAR-whitepaper.docx

Lower Columbia College

o If Has Value: if the cell has a value

Syntax: lcc:portalSetReturnDataFileDisplayColumnFlag [tab] [..Flag Name..] [tab] [..Flag Value..]

Example: lcc:portalSetReturnDataFileDisplayColumnFlag HideName YES

Example (multiple):

lcc:portalSetReturnDataFileDisplayColumnFlag HideName YES

lcc:portalSetReturnDataFileDisplayColumnFlag DisplayFormat #,#

lcc:portalSetReturnDataFileDelimiter (optional, one to many per Logic File/Portal Set, one per Return Data File)

Supported modules: Front End

What delimiter is used between the columns. The program defaults to Tab if one not provided.

To specify a Tab, use "[tab], else use the character.

Syntax: lcc:portalSetReturnDataFileDelimiter [tab] [..Delimiter..]

Example: lcc:portalSetReturnDataFileDelimiter ,

Example #2: lcc:portalSetReturnDataFileDelimiter [tab]

lcc:portalSetReturnDataFileReturnAgainst (mandatory, one to many per Logic File/Portal Set/Return Data File)

Supported modules: Front End

What Log In column will be checked against what Return column.

Syntax: lcc:portalSetReturnDataFileReturnAgainst [tab] [..Log In Col #..] [tab] [..Return Col #..]

Example: lcc:portalSetReturnDataFileReturnAgainst 1 4

lcc:portalSetReturnDataFileDisplayColumnsTitle (mandatory, one to many per Logic File/Portal Set, one per Return Data File)

Supported modules: Front End

What title is displayed above the Return columns.

Syntax: lcc:portalSetReturnDataFileDisplayColumnsTitle [tab] [...]

Example: lcc:portalSetReturnDataFileDisplayColumnsTitle Your Portal Credentials

Page 39: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 39 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:portalSetReturnDataFileDisplayColumnsOrientation (optional, one to many per Logic File/Portal Set, one per Return Data

File)

Supported modules: Front End

Sets the orientation of the result columns. The default is vertical.

The user can override this settings with the Adhoc choosing of Vertical or Horizontal through the web page interface.

Valid Values

Horizontal

Syntax: lcc:portalSetReturnDataFileDisplayColumnsOrientation [tab] [...]

Example: lcc:portalSetReturnDataFileDisplayColumnsOrientation Horizontal

lcc:portalSetReturnDataFileDisplayColumnsEmptyMessage (mandatory, one to many per Logic File/Portal Set, one per

Return Data File)

Supported modules: Front End

If no records match, what message is displayed.

Syntax: lcc:portalSetReturnDataFileDisplayColumnsEmptyMessage [tab] [...]

Example: lcc:portalSetReturnDataFileDisplayColumnsEmptyMessage No credentials found.

lcc:portalSetReturnDataFileDisplayColumn (mandatory, one to many per Logic File/Portal Set, one to many per Return Data

File)

Supported modules: Front End

What Return column to return and what Label to use for it.

Syntax: lcc:portalSetReturnDataFileDisplayColumn [tab] [..Col #..] [tab] [..Label..]

Example: lcc:portalSetReturnDataFileDisplayColumn 4 Username

Example #2 (multiple):

lcc:portalSetReturnDataFileDisplayColumn 4 Username

lcc:portalSetReturnDataFileDisplayColumn 6 Password

Page 40: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 40 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:portalSetReturnDataFileDisplayColumnAsList (optional, one to many per Logic File/Portal Set, one per Return Data File)

Supported modules: Front End

If supplied, will combine all values from a single column into one delimited value and display in a text box that can be

copied by the user. For example, if your results contain an 'email' column, you can use this key to combine all those

email addresses into a single value ready to be pasted into the TO line.

The Col # paramter defines which column will be used to grab values from.

On the Delimiter parameter, this is a single character used to delimit the values, like ';'. If you want to use a whitespace

character, you can supplied these:

• [space]

• [tab]

The Title paramter defines what title to display in the copy section of the values.

Syntax: lcc:portalSetReturnDataFileDisplayColumnAsList [tab] [..Col #..] [tab] [..Delimiter..] [tab] [..Title..]

Example: lcc:portalSetReturnDataFileDisplayColumnAsList 8 ; Email Addresses

Example #2: lcc:portalSetReturnDataFileDisplayColumn 4 [tab] EMPLIDs

lcc:portalSetReturnDataFileDisplayColumnFlag (optional, one to many per Logic File/Portal Set/Return Display Column)

Supported modules: Front End

A set of flags that can affect how the return display column looks and acts.

Valid Flags

• PrependValueData [...]

Add content before the Column Value

• AppendValueData [...]

Add content after the Column Value

• PrependValueDataIfNotEmpty [...]

Add content before the Column Value, only if the Column Value is not empty

• AppendValueDataIfNotEmpty [...]

Add content after the Column Value, only if the Column Value is not empty

Page 41: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 41 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Syntax: lcc:portalSetReturnDataFileDisplayColumnFlag [tab] [...]

Example: lcc:portalSetReturnDataFileDisplayColumn PrependValueData lcc-

Example #2 (multiple):

lcc:portalSetReturnDataFileDisplayColumn PrependValueData lcc-

lcc:portalSetReturnDataFileDisplayColumn AppendValueDataIfNotEmpty @ourcollege.edu

Page Flags

When using the following keys to define files that will be loaded:

• lcc:pageHeaders

• lcc:pageTopper

• lcc:pageBody

• lcc:Footer

Flags can be used to define where auto-adhoc information will be inserted. Unlike Keys from the Logic File, flags have no

values and only define where something should happen.

The following flags can be used. At this time, the best place to place these flags would be in the 'lcc:pageBody' file.

[lccFlag:methodPortalOn] (mandatory, one per file)

Defines the beginning of a Portal Content Area. The Portal Content Area is where the program returns Portal content.

This is the only content the program returns at this time, but, this flag allows for future types of content outside of a Portal.

Must be paired with '[lccFlag:methodPortalOff]'.

Syntax: [lccFlag:methodPortalOn]

Example: [lccFlag:methodPortalOn]

[lccFlag:methodPortalOff] (mandatory, one per file)

Defines the end of a Portal Content Area. See '[lccFlag:methodPortalOn]'.

Must be paired with '[lccFlag:methodPortalOn]'.

Syntax: [lccFlag:methodPortalOff]

Page 42: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 42 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example: [lccFlag:methodPortalOff]

[lccFlag:displayLoginTitle] (optional, one per file)

Display the value from key ' lcc:sitesIndexTitle'.

Syntax: [lccFlag:displayLoginTitle]

Example: [lccFlag:displayLoginTitle]

[lccFlag:displayLogInPromo] (optional, one per file)

Display the content from any keys/paths supplied with 'lcc:portalSetLogInPromoPath'.

Syntax: [lccFlag:displayLogInPromo]

Example: [lccFlag:displayLogInPromo]

[lccFlag:displayLogInColumns] (mandatory, one per file)

Display all of the columns in a Portal Set defined with the key 'lcc:portalSetLoginColumn'.

Syntax: [lccFlag:displayLogInColumns]

Example: [lccFlag:displayLogInColumns]

[lccFlag:displaySubmit] (mandatory, one per file)

Displays a submit link from the content in these keys:

• lcc:portalSetLoginSubmitTitle

• lcc:portalSetLoginSubmitAdhocCode

Syntax: [lccFlag:displaySubmit]

Example: [lccFlag:displaySubmit]

[lccFlag:debugOn] (optional, one to many per file)

Defines the beginning of a Debug section. Any content between this and the matching '[lccFlag:debugOff] key will only

be displayed if being viewed by a Debug IP..

Must be paired with '[lccFlag:debugOff]'.

Syntax: [lccFlag:debugOn]

Example: [lccFlag:debugOn]

Page 43: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 43 of 59: lccROAR-whitepaper.docx

Lower Columbia College

[lccFlag:debugOff] (optional, one to many per file)

Defines the end of a Debug section. See '[lccFlag:debugOn]'.

Must be paired with '[lccFlag:debugOn]'.

Syntax: [lccFlag:debugOff]

Example: [lccFlag:debugOff]

Thresholds

Thresholds are a way to monitor and control how often users can query for information. This helps block brute-force attacks.

In the Thresholds folder, there are two types of files:

• thresholdsMonitor-YYYYMMDD.txt

This is the central thresholds monitoring log. It is just used as a history of attempts to retrieve information.

• [value]_[value].txt

For each column defined as a threshold, their values are concatenated together to create a filename.

Then, each retrieve for those same values are logged. If log entries for a specific threshold (like Second,

Minute) are exceeded in a specific day, the user is blocked from retrieving the information.

Thresholds have these default max attempts per day:

• Millisecond: 1

• Second: 1

• Minute: 4

• Hour: 12

• Day: 20

These settings can be overridden/configured per Portal Set.

SQL Sets

Page 44: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 44 of 59: lccROAR-whitepaper.docx

Lower Columbia College

SQL Sets define a connection source, query, and columns returned. The rows returned from the SQL query are treated just like

the lines from a Return Data File line.

lcc:SQLSetId (optional, one to many per Logic File/Portal Set, one per SQL Set section)

The start of settings for a SQL Set. Each of these keys must have a unique value. But, the value can be anything.

Syntax: lcc:SQLSetId [tab] [...]

Example: lcc:SQLSetId ourSQLSet

lcc:SQLSetServer (mandatory, one per SQL Set)

The SQL server.

Syntax: lcc:SQLSetServer [tab] [...]

Example: lcc:SQLSetServer ourSQLServer

lcc:SQLSetSecurityType (optional, one per SQL Set)

Defines what type of security is used. The default is User Id/Password.

Valid Values

• Integrated : does not pass the User Id/Password

Syntax: lcc:SQLSetSecurityType [tab] [...]

Example: lcc:SQLSetSecurityType Integrated

lcc:SQLSetUserId (optional, one per SQL Set)

User Id for the SQL connection.

Suggestion: we highly suggest encrypting the value for this key. See "Specifying Encrypted Key Values In The Logic

File"

Syntax: lcc:SQLSetUserId [tab] [...]

Example: lcc:SQLSetUserId jdoe

lcc:SQLSetUserPassword (optional, one per SQL Set)

User Password for the SQL connection.

Page 45: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 45 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Suggestion: we highly suggest encrypting the value for this key. See "Specifying Encrypted Key Values In The Logic

File"

Syntax: lcc:SQLSetUserPassword [tab] [...]

Example: lcc:SQLSetUserPassword jdoe

lcc:SQLSetDatabase (mandatory, one per SQL Set)

The SQL database.

Syntax: lcc:SQLSetDatabase [tab] [...]

Example: lcc:SQLSetDatabase ourDatabase

lcc:SQLSetTable (mandatory, one per SQL Set)

The SQL table.

Syntax: lcc:SQLSetTable [tab] [...]

Example: lcc:SQLSetTable ourTable

lcc:SQLSetQuery (mandatory, one per SQL Set)

The SQL query. . The # column specifies which query to use in the Validate or Return data sets. This way, you can have

multiple queries defined for the same SQL set, as long as they return the same number of columns.

Within the query, you can have user supplied filters embedded into the query. Just placed “[lccUserCol#]” where you

want the user supplied value. For example, if you allow the user to have three (3) filter column, and you want what they

supplied in #2 to be used in the query, you could do the following:

SELECT * FROM ourTable WHERE lccSOurCol='[lccUsercol2]' ORDER BY col1,col2;

You can optionally begin the Query value with: "FromFile:" and then supply a path. The query will then be read from that

path.

Syntax: lcc:SQLQuery [tab] [..#..] [tab] [..Query..]

Example: lcc:SQLQuery 1 SELECT * FROM ourTable ORDER BY col1,col2;

Example (from file): lcc:SQLQuery 1 FromFile:E:\ourQueries\someSet-query-1.txt

Example (multiple):

lcc:SQLQuery 1 SELECT * FROM ourTable ORDER BY col1,col2;

Page 46: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 46 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:SQLQuery 2 SELECT * FROM ourTable ORDER BY col3,col4;

lcc:SQLSetResultsCol (mandatory, one to many per SQL Set)

A column returned by the query. There should be one of this key for each column returned.

The name does not matter, and is only a placeholder for the system, and used by the person reading the Logic File.

Syntax: lcc:SQLResultsCol [tab] [..Name..]

Example: lcc:SQLResultsCol Last Name

Example #2 (multiple):

lcc:SQLResultsCol Last Name

lcc:SQLResultsCol First Name

Example

lcc:SQLSetId ourSQLSet

lcc:SQLSetServer ourSQLServer

lcc:SQLSetSecurityType Integrated

lcc:SQLSetUserId ourSQLuser

lcc:SQLSetUserPassword ourSQLPassword

lcc:SQLSetDatabase ourDatabase

lcc:SQLSetTable ourTable

lcc:SQLSetQuery SELECT * FROM ourTable ORDER BY col1,col2;

lcc:SQLSetResultsCol Last Name

lcc:SQLSetResultsCol First Name

lcc:SQLSetResultsCol Hours

lcc:SQLSetResultsCol Title

mySQL Sets

mySQL Sets define a connection source, query, and columns returned. The rows returned from the mySQL query are treated

just like the lines from a Return Data File line.

Page 47: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 47 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:mySQLSetId (optional, one to many per Logic File/Portal Set, one per mySQL Set section)

The start of settings for a mySQL Set. Each of these keys must have a unique value. But, the value can be anything.

Syntax: lcc:mySQLSetId [tab] [...]

Example: lcc:mySQLSetId myourSQLSet

lcc:mySQLSetDriver (mandatory, one per mySQL Set)

The mySQL driver.

Syntax: lcc:mySQLSetDriver [tab] [...]

Example: lcc:mySQLSetDriver {MySQL ODBC 5.3 ANSI Driver}

lcc:mySQLSetServer (mandatory, one per mySQL Set)

The mySQL server.

Syntax: lcc:mySQLSetServer [tab] [...]

Example: lcc:mySQLSetServer ourMySQLServer

lcc:mySQLSetServerPort (mandatory, one per mySQL Set)

The mySQL server port.

Syntax: lcc:mySQLSetServerPort [tab] [..#..]

Example: lcc:mySQLSetServerPort 3306

lcc:mySQLSetUserId (optional, one per mySQL Set)

User Id for the mySQL connection.

Suggestion: we highly suggest encrypting the value for this key. See "Specifying Encrypted Key Values In The Logic

File"

Syntax: lcc:mySQLSetUserId [tab] [...]

Example: lcc:mySQLSetUserId jdoe

lcc:mySQLSetUserPassword (optional, one per mySQL Set)

User Password for the mySQL connection.

Page 48: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 48 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Suggestion: we highly suggest encrypting the value for this key. See "Specifying Encrypted Key Values In The Logic

File"

Syntax: lcc:mySQLSetUserPassword [tab] [...]

Example: lcc:mySQLSetUserPassword jdoe

lcc:mySQLSetDatabase (mandatory, one per mySQL Set)

The mySQL database.

Syntax: lcc:mySQLSetDatabase [tab] [...]

Example: lcc:mySQLSetDatabase ourDatabase

lcc:mySQLSetTable (mandatory, one per mySQL Set)

The mySQL table.

Syntax: lcc:mySQLSetTable [tab] [...]

Example: lcc:mySQLSetTable ourTable

lcc:mySQLSetQuery (mandatory, one per mySQL Set)

The mySQL query. The # column specifies which query to use in the Validate or Return data sets. This way, you can

have multiple queries defined for the same mySQL set, as long as they return the same number of columns.

Syntax: lcc:mySQLQuery [tab] [..#..] [tab] [..Query..]

Example: lcc:mySQLQuery 1 SELECT * FROM ourTable ORDER BY col1,col2;

Example (multiple):

lcc:mySQLQuery 1 SELECT * FROM ourTable ORDER BY col1,col2;

lcc:mySQLQuery 2 SELECT * FROM ourTable2 ORDER BY col1,col3;

lcc:mySQLSetResultsCol (mandatory, one to many per mySQL Set)

A column returned by the query. There should be one of this key for each column returned.

The name does not matter, and is only a placeholder for the system, and used by the person reading the Logic File.

Syntax: lcc:mySQLResultsCol [tab] [..Name..]

Example: lcc:mySQLResultsCol Last Name

Page 49: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 49 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Example #2 (multiple):

lcc:mySQLResultsCol Last Name

lcc:mySQLResultsCol First Name

Example

lcc:mySQLSetId osTicket-Tickets

lcc:mySQLSetDriver {MySQL ODBC 5.3 ANSI Driver}

lcc:mySQLSetServer 123.123.123.123

lcc:mySQLSetServerPort 3306

lcc:mySQLSetUserId [lcc:encrypted]...

lcc:mySQLSetUserPassword [lcc:encrypted]...

lcc:mySQLSetDatabase osticket_db

lcc:mySQLSetTable ost_ticket

lcc:mySQLSetQuery SELECT T1.ticket_id,T1.number,T1.status_id,T1.created,T1.updated FROM

ost_ticket AS T1;

lcc:mySQLSetResultsCol Id

lcc:mySQLSetResultsCol Number

lcc:mySQLSetResultsCol Status_Id

lcc:mySQLSetResultsCol Created

lcc:mySQLSetResultsCol Updated

Specifying Encrypted Key Values In The Logic File

The following Keys values can be encrypted (see Encrypting Key Values):

• lcc:LDAPUserId

• lcc:LDAPUserPassword

• lcc:SQLSetUserId

• lcc:SQLSetUserPassword

If you supply the Keys:

• lcc:globalEncryptionHash

• lcc:sourceEncryptedSaltKey

Page 50: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 50 of 59: lccROAR-whitepaper.docx

Lower Columbia College

• lcc:sourceEncryptedVIKey

To specify that the value is encrypted, precede the value with the text "[lcc:encrypted]".

For example, this would provide an encrypted value for a password key:

lcc:LDAPUserId [lcc:encrypted]...

Encrypting/Decrypting Values

To encrypt/decrypt a value, create a Logic File with only these three keys.

• lcc:globalEncryptionHash

• lcc:globalEncryptionSaltKey

• lcc:globalEncryptionVIKey

These keys/values should match the ones in your regular/site Logic File.

Run the lccROAR.exe from another folder (other than the website folder) and supply a new Configuration File that points to this

Logic File.

Then, use the Example Command Line Syntax below to Encrypt values. As each value is encrypted and copied to your

clipboard,

Example Logic File

note: extra tabs used to be view friendly in this document

lcc:globalEncryptionHash 1234512345

lcc:globalEncryptionSaltKey asdfasdf

lcc:globalEncryptionVIKey 1a1a1a1a1a1a1a1a

Example Command Line Syntax

lccROAR.exe lcc:method encrypt ...

lccROAR.exe lcc:method decrypt ...

Configuration File Example

Page 51: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 51 of 59: lccROAR-whitepaper.docx

Lower Columbia College

Change the key 'lcc:l ogicPath' to point to the path/file of your Logic File.

Suggestion: set your web server to not server this config file to end users.

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

<configSections></configSections>

<appSettings>

<add key="lcc:logicPath" value="[drive]:\folder\lccROAR-logic.txt"/>

</appSettings>

<startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>

</configuration>

Methods

portal : responds in 'portal' mode, which is also the default

portalDemo : responds in 'portal demo' mode. This will only display 'public' Portal Sets that are marked as 'demo'

encrypt : encrypt a value

backEnd : respond to requests, produce responses, like LDAP

Logic File Examples

Front End

lcc:debugIP 123.123.123.123

lcc:debugLevel 1 logic name/values to log

lcc:debugLevel 2 display query name/values

lcc:debugLevel 3 display post name/values

lcc:debugLevel 5 environment name/values

lcc:debugLevel 6 validate information

lcc:debugLevel 7 validate return information

Page 52: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 52 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:debugLevel 8 show link to direct Portal Set, in debug mode

lcc:debugLevel 9 logic name/values to screen

lcc:debugLevel 10 LDAP

lcc:debugLevel 11 Response not found

lcc:debugLevel 12 Response key

lcc:debugLevel 13 Keep Response Files

lcc:logPath [drive]:\folder\logs\lccROAR\lccROAR

lcc:thresholdsPath [drive]:\folder\lccROAR\thresholds

lcc:orientation Horizontal

lcc:sitesIndexTitle Sites

lcc:globalEncryptionHash s0m3C00lPhr@$e+

lcc:globalEncryptionSaltKey s0m3C00lPhr@$e+

lcc:globalEncryptionVIKey s0m3C00lPhr@$e12

lcc:securityKey our cool security key

----------------------------

lcc:programPath /ourScripts/lccROAR.exe

lcc:webResourcesPath /lccROAR

lcc:requestsPath [drive]:\folder\data\lccROAR\requests

lcc:responsesPath [drive]:\folder\data\lccROAR\responses

lcc:pageHTMLAttributes lang="en"

lcc:pageCSS index.css

lcc:pageCSSHorizontal index-h.css

lcc:pageCSSVertical index-v.css

lcc:pageScript index.js

lcc:pageTitle lccROAR: Retrieve Online Authorized Records

lcc:pageHeader D:\web\data\lccROAR\header1.txt

lcc:pageTopper D:\web\data\lccROAR\topper1.txt

lcc:pageBody D:\web\data\lccROAR\body.txt

lcc:pageFooter D:\web\data\lccROAR\footer1.txt

lcc:pageHTMLAttributes lang="en"

lcc:pageCSS index.css

lcc:pageCSSHorizontal index-h.css

lcc:pageCSSVertical index-v.css

lcc:pageScript index.js

lcc:pageTitle Retrieve Credentials

lcc:pageHeader [drive]:\folder\data\lccROAR\header1.txt

lcc:pageTopper [drive]:\folder\data\lccROAR\topper1.txt

lcc:pageBody [drive]:\folder\data\lccROAR\body.txt

Page 53: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 53 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:pageFooter [drive]:\folder\data\lccROAR\footer1.txt

-----------------------------------------------------------------------------------------------------------------------

------

lcc:portalSetId PhoneReverseLookup

lcc:portalSetFlag Skip YES

lcc:portalSetFlag Private YES

lcc:portalSetThreshold Second 2

lcc:portalSetThreshold Minute 60

lcc:portalSetThreshold Hour 300

lcc:portalSetThreshold Day 500

lcc:portalSetTitle Phone Reverse Lookup

lcc:portalSetLoginSubmitTitle Provide Phone Number

lcc:portalSetLogInPromoPath [drive]:\folder\data\PortalSets\PortalsCredentials\Promo.txt

lcc:portalSetLoginColumn 1 Phone

lcc:portalSetLoginColumnFlag AutoFocus YES

lcc:portalSetLoginColumnFlag InputType Number

lcc:portalSetLoginColumnFlag ValidateAgainst 4

lcc:portalSetLoginColumnFlag Wildcard YES

lcc:portalSetLoginColumnFlag Case-Insensitive YES

lcc:portalSetLoginColumnFlag ThresholdMonitor YES

lcc:portalSetValidateDataFile \\server\share$\folder\lccROAR-phoneReverseLookup.txt

lcc:portalSetValidateDataFileDelimiter [tab]

lcc:portalSetReturnDataFile 1 \\server\share$\folder\lccROAR-phoneReverseLookup.txt

lcc:portalSetReturnDataFileReturnAgainst 1 4

lcc:portalSetReturnDataFileDelimiter [tab]

lcc:portalSetReturnDataFileDisplayColumnsTitle Record Information

lcc:portalSetReturnDataFileDisplayColumnsEmptyMessage No matches found.

lcc:portalSetReturnDataFileDisplayColumn 1 LID Id

lcc:portalSetReturnDataFileDisplayColumn 2 First Name

lcc:portalSetReturnDataFileDisplayColumn 3 Last Name

lcc:portalSetReturnDataFileDisplayColumn 4 Phone

lcc:portalSetReturnDataFileDisplayColumn 5 Email

lcc:portalSetReturnDataFileDisplayColumnFlag AppendValueDataIfNotEmpty @ourcollege.edu

lcc:portalSetReturnDataFileDisplayColumn 6 Title

lcc:portalSetReturnDataFileDisplayColumn 8 Department

-----------------------------------------------------------------------------------------------------------------------

------

lcc:portalSetId sqlDriverTest

lcc:portalSetFlag Skip YES

lcc:portalSetFlag Private YES

lcc:portalSetTitle SQL Driver Test

Page 54: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 54 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:portalSetKey ourCoolKey

lcc:LDAPSecurityGroup CN=ourSecurityGroup,OU=Security Groups,DC=college,DC=edu

lcc:LDAPSecurityGroup CN=ourSecurityGroup2,OU=Security Groups,DC=college,DC=edu

lcc:portalSetLoginSubmitTitle SQL Driver Test

lcc:portalSetLoginInformationNotFoundMessage No LID Records Found For That Criteria

lcc:portalSetLogInPromoPath [drive]:\folder\data\lccROAR\PortalSets\sqlDriverTest\promo.txt

lcc:portalSetLoginColumn 1 First Name

lcc:portalSetLoginColumnFlag AutoFocus YES

lcc:portalSetLoginColumnFlag Case-Insensitive YES

lcc:portalSetLoginColumnFlag ValidateAgainst 2

lcc:portalSetLoginColumnFlag Wildcard YES

lcc:portalSetLoginColumnFlag EmptyValueValid YES

lcc:portalSetLoginColumnFlag SuggestFormat ex: john

lcc:portalSetLoginColumn 2 Last Name

lcc:portalSetLoginColumnFlag Case-Insensitive YES

lcc:portalSetLoginColumnFlag ValidateAgainst 3

lcc:portalSetLoginColumnFlag Wildcard YES

lcc:portalSetLoginColumnFlag EmptyValueValid YES

lcc:portalSetLoginColumnFlag SuggestFormat ex: doe

lcc:portalSetLoginColumn 3 Email

lcc:portalSetLoginColumnFlag Case-Insensitive YES

lcc:portalSetLoginColumnFlag ValidateAgainst 4

lcc:portalSetLoginColumnFlag Wildcard YES

lcc:portalSetLoginColumnFlag EmptyValueValid YES

lcc:portalSetLoginColumnFlag SuggestFormat ex: jdoe

lcc:portalSetValidateDataFile SQL:sqlTest

lcc:portalSetReturnDataFile 1 SQL:sqlTest

lcc:portalSetReturnDataFileReturnAgainst 1 2

lcc:portalSetReturnDataFileReturnAgainst 2 3

lcc:portalSetReturnDataFileReturnAgainst 3 4

lcc:portalSetReturnDataFileDisplayColumnsTitle SQL Test Records

lcc:portalSetReturnDataFileDisplayColumnsOrientation Horizontal

lcc:portalSetReturnDataFileDisplayColumnsEmptyMessage No LID Records found.

lcc:portalSetReturnDataFileDisplayColumn 1 Id

lcc:portalSetReturnDataFileDisplayColumn 2 First Name

lcc:portalSetReturnDataFileDisplayColumn 3 Last Name

lcc:portalSetReturnDataFileDisplayColumn 4 Email

lcc:portalSetReturnDataFileDisplayColumn 5 Hours

lcc:portalSetReturnDataFileDisplayColumn 6 Title

-----------------------------------------------------------------------------------------------------------------------

------

lcc:SQLSetId sqlTest

lcc:SQLSetServer ourSQLServer

lcc:SQLSetSecurityType Integrated

Page 55: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 55 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:SQLSetUserId [lcc:encrypted]...

lcc:SQLSetUserPassword [lcc:encrypted]...

lcc:SQLSetDatabase ourDatabase

lcc:SQLSetTable dbo.ourTable

lcc:SQLSetQuery 1 SELECT RTRIM(id),RTRIM(FirstName),RTRIM(LastName),RTRIM(Email),RTRIM(Hours),RTRIM(Title) FROM

dbo.ourTable ORDER BY Id DESC,LastName,FirstName;

lcc:SQLSetResultsCol First Name

lcc:SQLSetResultsCol Last Name

lcc:SQLSetResultsCol Email

lcc:SQLSetResultsCol Hours

lcc:SQLSetResultsCol Title

-----------------------------------------------------------------------------------------------------------------------

------

lcc:mySQLSetId osTicket Tickets

lcc:mySQLSetDriver {MySQL ODBC 5.3 ANSI Driver}

lcc:mySQLSetServer 123.123.123.123

lcc:mySQLSetServerPort 3306

lcc:mySQLSetUserId [lcc:encrypted]...

lcc:mySQLSetUserPassword [lcc:encrypted]...

lcc:mySQLSetDatabase ourDatabase

lcc:mySQLSetTable ourTable

lcc:mySQLSetQuery 1 SELECT T1.ticket_id,T1.number,T2.name AS User FROM ourTickets WHERE T1.dept_id='1';

lcc:mySQLSetQuery 2 SELECT T1.ticket_id,T1.number,T2.name AS User FROM ourTickets WHERE T1.dept_id='2';

lcc:mySQLSetResultsCol ticket_id

lcc:mySQLSetResultsCol number

lcc:mySQLSetResultsCol User

Back End

lcc:debugLevel 9

lcc:debugLevel 10

lcc:debugLevel 14 Keep Requests Files

lcc:logPath [drive]:\folder\logs\lccROAR\lccROARLog-backEnd

lcc:debugMode YES

lcc:globalEncryptionHash s0m3C00lPhr@$e+

lcc:globalEncryptionSaltKey s0m3C00lPhr@$e+

lcc:globalEncryptionVIKey s0m3C00lPhr@$e12

Page 56: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 56 of 59: lccROAR-whitepaper.docx

Lower Columbia College

lcc:method backEnd

lcc:heartbeatSeconds 60

lcc:abortPath .\lccROAR-backEnd-abort.txt

lcc:pauseBetweenRequests 1

lcc:requestsPath [drive]:\folder\data\lccROAR\requests

lcc:responsesPath [drive]:\folder\data\lccROAR\responses

lcc:requestsArchivePath [drive]:\folder\data\lccROAR\requestsArchive

lcc:LDAPServer ourDC/dc=college,dc=edu

lcc:LDAPServer ourDC2/dc=college,dc=edu

lcc:securityKey our cool security key

lcc:LDAPUserId [lcc:encrypted]...

lcc:LDAPUserPassword [lcc:encrypted]...

Admin Decryption

lcc:logPath .\lccROARLog

lcc:globalEncryptionHash s0m3C00lPhr@$e+

lcc:globalEncryptionSaltKey s0m3C00lPhr@$e+

lcc:globalEncryptionVIKey s0m3C00lPhr@$e12

lcc:securityKey our cool security key

lcc:method decryptRequestsResponses

lcc:decryptRequestsResponsesPath Requests \\ourServer\share$\folder\data\lccROAR\requests

lcc:decryptRequestsResponsesPath RequestsCompleted \\ourServer\share$\folder\data\lccROAR\requestsArchive\completed

lcc:decryptRequestsResponsesPath RequestsFailed \\ourServer\share$\folder\data\lccROAR\requestsArchive\failed

lcc:decryptRequestsResponsesPath Responses \\ourServer\share$\folder\data\lccROAR\responses

Wildcards In Values

If a key allows wildcards, you can use the following type of wildcards in values.

• *abc : will return true if the value ends in 'abc'

• abc* : will return true if the value begins in 'abc'

• abc*lmn* : will return true if the value begins with 'abc' and has 'lmn' somewhere before the end

• abc*lmn*xyz : will return true if the value begins with 'abc' and has 'lmn' somewhere before the end and ends in xyz

Page 57: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 57 of 59: lccROAR-whitepaper.docx

Lower Columbia College

In short, the '*' can be used where you want a wildcard placed.

Resources

• LCC Supporting Colors, ref: http://services4.lowercolumbia.edu/internal/lccPrimarySupportingColors.htm

• LCC Branding and Style Guide, ref: https://services4.lowercolumbia.edu /info/webresources/Institutional-

Research/LCC_Brand_Style_Guide.pdf

• Web Accessibility wiki, ref: https://en.wikipedia.org/wiki/Web_accessibility

• WA Policy 188, ref:

http://ocio.wa.gov/sites/default/files/public/policies/188_Accessibility_Interim_TSB_Sub_201705_3.pdf

• W3C Multimedia Accessibility, ref: https://www.w3.org/2008/06/video-notes

Definitions

AD - Active Directory

CSS - Cascading Style Sheets

LDAP - Lightweight Directory Access Protocol

IIS - Internet Information Services

SQL - Structured Query Language

URL - Uniform Resource Locator

Modifications

NAME DATE MODIFICATION

David Mielcarek 9/20/2017 Created

David Mielcarek 9/27/2017 Added SQL Sets, and Keys "

lcc:portalSetReturnDataFileDisplayColumnsOrientation",

"lcc:portalSetKey", new Customized URL parameters.

David Mielcarek 9/29/2017 Added Encryption, LDAP keys.

David Mielcarek 20171017 Add key 'lcc:portalSetCSS'

David Mielcarek 20171117 Added LDAP, Back End Requests/Responses and Admin

Decryption modules.

Page 58: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 58 of 59: lccROAR-whitepaper.docx

Lower Columbia College

David Mielcarek 20171129 Added key 'lcc:portalSetAndOr'

David Mielcarek 20171130 Added mySQL Set

David Mielcarek 20171206 Convert/added keys to 'flags', like lcc:portalSetFlag

David Mielcarek 20171207 Added flag 'lcc:loadSettingsFromFile'

David Mielcarek 20180116 Added flag 'ShowLastUpdated'

David Mielcarek 20180227 Added keys 'lcc:portalSetWebResourceBrowsingDataType',

'lcc:portalSetWebResourceBrowsingIncludeFilename',

'lcc:portalSetWebResourceBrowsingExcludeFilename',

'WebResourceBrowsingDirectoryReverseOrderOnCookieTrail',

'WebResourceBrowsingFileReverseOrderOnCookieTrail' and

Flag 'WebResourceBrowsingDataType'. Added wildcard

values.

David Mielcarek 20180327 Added more flags to

'lcc:portalSetReturnDataFileDisplayColumnFlag' for decimals

David Mielcarek 20180329 Added more flags to

'lcc:portalSetReturnDataFileDisplayColumnFlag' for

HighlightCell

David Mielcarek 20180514 Added key 'lcc:adminIP'

David Mielcarek 20180521 Added more flags to 'lcc:portalSetFlag' for

'ResponseModeAuthorized', 'APIResponseFormat'

David Mielcarek 20180718 Added more flags to 'lcc:portalSetFlag' for 'AuthorizedIP',

'AuthorizedIPWildcardLeft'

David Mielcarek 20180806 Added keys 'lcc:portalPageTopper', 'lcc:portalPageFooter'

David Mielcarek 20180807 Added key 'lcc:portalSetLoginGlobalColumn'

David Mielcarek 20180829 Added flag to ‘lcc:portalSetFlag’ for ‘PortalThreshold’

David Mielcarek 20180911 Added flag to ‘lcc:portalSetFlag’ for ‘MaxRecordsCeiling’, note

about lccUserCol# in key ‘lcc:SQLSetQuery’

David Mielcarek 20200409 Added option on lcc:SQLSetQuery for loading from file, see

"FromFile:"

David Mielcarek 20200706 Added key 'lcc:LDAPSecurityGroupsMustMatchAll'

David Mielcarek 20200709 Added key 'lcc:portalSetReturnDataFileDisplayColumnAsList'

David Mielcarek 20200714 Added new flag to 'lcc:portalSetLoginColumnFlag' for

'SuggestedValues' and option ctcLinkTerm.

David Mielcarek 20200715 Added new flag to 'lcc:portalSetLoginColumnFlag' for

'MultiLine', 'MultiLineRows', 'MultiFilters'. New key

Page 59: lccROAR White Paper€¦ · Page 1: of 56 lccROAR-whitepaper.docx Lower Columbia College lccROAR White Paper Contents Description.....2

Page 59 of 59: lccROAR-whitepaper.docx

Lower Columbia College

'lcc:maxFilterSize', new flags to 'lcc:portalSetFlag' for

'APIResponseFormat', 'APIDownloadOption'.

David Mielcarek 20201001 Added new flag to 'lcc:portalSetLoginColumnFlag' for

'ValidateAgainstQuery'

End of document