System Profile
System Full Name | National Occurence Response Management System | |
---|---|---|
System Full Name (French) | Système National De Gestion Des Interventionsnational de gestion des interventions | |
Business Administrator | Dean Ciaschini | |
Business Owner | Joel Morley | |
Director | Patrick Juneau | |
Business Subject Matter Expert(s) | Matthew Staynor | |
Division | Aviation Safety Policy and Intelligence | |
NTARS Code | ||
Source Location | ||
Source Code Location (Archived) | ||
Migration to DevOps |
| |
New Source Code Location (DevOps) | https://dev.azure.com/transport-canada/DSD-CIVAV Support/_git/NORMS |
Technology Assessment
Platform Type | |
---|---|
Database Platform and Version | Oracle 18C |
Development Language and Framework | |
Operating System and Version | Windows Server 2016 |
Additional Dependencies | |
Authentication |
Environment Access Information
ENV | UNC | WWWFILES | URL | DB |
---|---|---|---|---|
TruePass | ||||
DEV | \\tcwebscripts\tpwwwroot\securedeveigdev\NORMSnorms | https://etpdeveigdev.tc.gc.ca/NORMSnorms/ | NORMSD | |
PREACCACC | \\tcwebscripts\tpwwwroot\securedeveigacc\NORMS-PreAccnorms | https://etpdeveigacc.tc.gc.ca/NORMS-PreAccnorms/ | ACC | \\tcwebscripts\tpwwwroot\secureaccNORMSA |
PROD | https://etpacceig.tc.gc.ca/normsPROD/ | NORMSP |
Expand | |||||||||
---|---|---|---|---|---|---|---|---|---|
| |||||||||
|
...
...
EIG
...
|
...
|
...
|
...
...
|
...
|
...
...
System Overview
This project is for the redesign and replacement of existing inefficient tools, processes, and procedures towards creating a current, modern, well designed, well supported tool set to enable the Occurrence Response sections in Civil Aviation, Marine Safety, and Rail Safety to manage and deliver the Minster’s Observer Program as defined in the Canadian Transportation Accident Investigation and Safety Board (CTAISB) Act, and other relevant legislature for Safety and Security Groups.
NORMS receives data from the TSB's ASIS system during a nightly 'handshake'. That is the only connection to the TSB other than manual emails sent by the various users (TSB liaison).
Developer installation
Completely uninstall and reinstall oracle 12c. The installer can be found in \\TC4S0A\GROUPS\AARA\AARAD\Software Library\Developer Tools\Oracle. Regular installation, except there is no need for any VS dev tools and can be installed system-wide. (Note: Not having Visual Studio 2015 installed might prompt the following error. Downloading Visual Studio 2015 should fix that issue.)
Unconfigure Oracle’s GAC with the attached bat file from \\Tc4s0a\groups\AARA\AARAD\NORMS.
Install the latest ODT from Oracle’s website.
Note: Although installing Visual Studio 2015 is needed for step 1, the application is run on Visual Studio 2019.
...
How to Create a NORMS User for Development Purposes
Good To Know
Valid Occurrence Number Formats
CWMS.Utilities - \\Tc4s0a\groups\AARA\AARAD\NORMS\CWMS.Utilities.1.0.1
Expand | ||
---|---|---|
| ||
When the Inspector users log in, Inbox->Action List will be opened to display, Occurrences will be closed. At present (2023-03-20), it is not required to change the above features_ Please see task #246234 NORMS user account not being directed to 'to do list' |
How-To and Fixes
Production Error Log - Tracking all the production issues to notice trends as they can't be replicated in ACC
How to Change the TSB Coordinator in NORMS
Deployment Considerations:
NORMS has been changed to use Entrust Identity Guard instead of Entrust Truepass.
They have provided dev (eigdev) and acc (eigacc) environments for EIG applications. eigdev is running on a single server but eigacc is running in web farm.
Web Farm Deployment Considerations
...
If you deploy your application in a Web farm, you must ensure that the configuration files on each server share the same value for validationKey and decryptionKey, which are used for hashing and decryption respectively. This is required because you cannot guarantee which server will handle successive requests.
With manually generated key values, the <machineKey> settings should be similar to the following example.
codeCopy
Code Block |
---|
<machineKey
validationKey="21F090935F6E49C2C797F69BBAAD8402ABD2EE0B667A8B44EA7DD4374267A75D7
AD972A119482D15A4127461DB1DC347C1A63AE5F1CCFAACFF1B72A7F0A281B"
decryptionKey="ABAA84D7EC4BB56D75D217CECFFB9628809BDB8BF91CFCD64568A145BE59719F"
validation="SHA1"
decryption="AES"
/>
|
If you want to isolate your application from other applications on the same server, place the <machineKey> in the Web.config file for each application on each server in the farm. Ensure that you use separate key values for each application, but duplicate each application's keys across all servers in the farm.
Generate Cryptographically Random Keys
To generate cryptographically random keys:
Use the RNGCryptoServiceProvider class to generate a cryptographically strong random number.
Choose an appropriate key size. The recommended key lengths are as follows:
For SHA1, set the validationKey to 64 bytes (128 hexadecimal characters).
For AES, set the decryptionKey to 32 bytes (64 hexadecimal characters).
For 3DES, set the decryptionKey to 24 bytes (48 hexadecimal characters).
The following code shows how to generate random key values. Compile the code to create a console application, and then pass the required key size as a command line argument expressed as the desired number of hexadecimal characters. Each byte is represented by two hexadecimal characters; therefore, to request a 32-byte key, pass 64 as a command line argument. If you do not specify an argument, the code returns a 128 hexadecimal character (64-byte) key.
C# Example
codeCopy
Code Block |
---|
using System;
using System.Text;
using System.Security;
using System.Security.Cryptography;
class App {
static void Main(string[] argv) {
int len = 128;
if (argv.Length > 0)
len = int.Parse(argv[0]);
byte[] buff = new byte[len/2];
RNGCryptoServiceProvider rng = new
RNGCryptoServiceProvider();
rng.GetBytes(buff);
StringBuilder sb = new StringBuilder(len);
for (int i=0; i<buff.Length; i++)
sb.Append(string.Format("{0:X2}", buff[i]));
Console.WriteLine(sb);
}
}
|
...
Machine Code Generator - Entrust Guard Identity
Test Plans, Suites and Test Cases imported from TFS
View file | ||
---|---|---|
|
View file | ||
---|---|---|
|
View file | ||
---|---|---|
|