Download CSET For Windows: CSET 10.1.1 Standalone Installer
What is CSET? CSET Overview
How Do I Use CSET? CSET User Guide
File Checksum Integrity Verifier version 2.05. csetstandalone.exe
MIT License, Apache License 2.0
Copyright 2018 Battelle Energy Alliance, LLC
See License.txt, and NOTICE.txt
Contact information of authors: cset@hq.dhs.gov
Idaho National Laboratory, P.O. Box 1625, MS 3870, Idaho Falls, ID 83415
Includes software licensed under LGPL
LGPL dependencies are required to build CSET. You will be required to aquire them via nuGet in order to build this software. They are not distributed with this source.
This application uses Hangfire software as a nuGet dependency.
Double-click on the CSETStandAlone program.
The User Account Control dialogue will come up (Fig.1). Select "Yes".
Figure 1: User Account Control box
A CSET dialogue will open asking if you want to install the CSET Desktop (Fig.2). Select "Yes".
Figure 2: Install dialogue
The program will begin extracting.
After extracting a CSET Setup dialogue will open (Fig.3). Select "Install".
Figure 3. CSET Setup
CSET will begin to install. If the user doesn't have IIS 10.0 Express, CSET will install it. The IIS 10.0 Express Setup dialogue will open (Fig.4). Click the check box to confirm that you "…accept the terms in the License Agreement", and then select "Install".
Figure 4. IIS Setup
IIS will install. Select "Finish" when it completes.
The CSET Setup Wizard will open to walk the user through the install process (Fig.5). Select "Next".
Figure 5: Setup Wizard
A disclaimer will open (Fig.6). Read through and then click the box "I read the disclaimer", and select "next".
Figure 6: Disclaimer
CSET will choose a default folder to install CSET to, but you can change this in the Destination Folder dialogue (Fig.7). Select "Next".
Figure 7: Destination Folder
The CSET Installer will show that it is ready to install (Fig. 8), select "Install".
Figure 8: Ready to Install
CSETis installed. Make sure that the "Launch CSET when setup exists" box is checked, and select "Finish".
The user should see a setup successful dialogue (Fig.9), and then have an option of how they want to open the app. For this example, Edge was used.
Figure 9: Setup Successful
The user has access to CSET as Local User. The Local Installation ribbon is visible at the top of the screen. They can see their landing page with no assessments at this time (Fig.10).
Figure 10: Local Install Landing Page
This documentation is provided to assist users in navigating the basics of the CSET® Enterprise Edition. Here users will find step-by-step directions for installation, configuration, and setup, as well as links to various resources to assist in this process.
Download the CSET Enterprise Files from the CSET® releases page. Click "CSET_10.1-Binary.zip" file to download it. Once the download is complete, you will need to unzip the folder.
We will be using Microsoft SQL Server 2016 for this setup. If you need to, you can download the Express version from Microsoft directly a. CSET® requires your server to have the URL Rewrite Module installed as well. Again, this can be downloaded directly from Microsoft
If you are using an SQL Server, download and install Microsoft SQL Server Management Studio (SSMS)
Confirmation – Click “Install”. Close out of the Wizard when installation is complete.
To begin the process of installing a new SQL Server on your machine (see below):
Once your server is up and running, you will need to install the URL Rewrite Module. Simply download the file from Microsoft (see Page 2 links or above hyperlink) and run the application to install the necessary patch.
On the left, select “Advanced Settings.”
Open the CSET® Dist folder that you downloaded earlier and navigate to the “Data” subfolder. Inside this folder you will find two files called “CSETWeb” and “CSETWeb_log.” Copy these two files to your server.
Open Microsoft SQL Server Management Studio (see below) and connect to the SQL Server that we setup previously.
Inside the Object Explorer on the left, right-click the Database folder (see below) and then click “Attach.”
This will bring up the “Attach Databases” dialog box (see below). Click the Add button and navigate to the location where you previously saved/copied the CSETWeb.mdf file. Click on the file and then click “OK,” and then click “OK” again to attach the database.
You’ll know you’ve completed this step successfully when you can see the “CSETWeb” object appear under the Databased section in the Object explorer.
In the next window (see below), enter a login name, select the “SQL Server authentication” radio button, and then enter a password. If you choose to go through the Windows authentication, you will not need to enter a password.
At the bottom of the box, change the Default database to CSETWeb.
At top-left from the window shown below, click “User Mapping” and then select the CSETWeb checkbox. Then click “OK.”
In the dialog box that pops up, select “Securables” from the menu on the left if it is not already selected.
Click the Search button to generate another dialog box. Make sure the “Specific objects…” radio button is selected and then click “OK.”
Once you hit OK, you should see yet another box pop-up titled “Select Object.” Click the button that says Object Types… This will generate a list of object types. Scroll down until you see the “Schemas” object (see below). Check this box, and then click “OK.”
Next, click "Browse" and select the "dbo" checkbox. Then click "Ok".
Once we have our dbo inside our Securables, we need to grant it permissions. Scroll through the list of permissions and when you find the "Execute" permission, select the "Grant" checkbox.
Our final step is to go over to the Membership page (see below) and select the checkboxes for “db_datareader” and “db_datawriter.” Then select “OK.”
Copy all of contents from inside the CSET® Dist folder you downloaded and place them into your "wwwroot" folder.
Scroll to the bottom of the document and you will find the "connectionStrings" section. We will need to edit these to correctly connect to CSET®.
On each of the lines inside the two connection string tags, there is a part that says “data source=…” You will need to change the part after the equals sign to the IP address or domain name of the machine on which the SQL Server is running.
If IIS and the SQL Server instance are running on the same machine, you can use “localhost” as the domain name. Otherwise, you will need the specific domain or IP address to connect properly.
On each of the same lines, you will need to update the “Integrated Security=SSPI” section to reflect your SQL Server specific login info.
If you are using the Windows domain authentication method, then you will use “Trusted_Connection=SSPI” instead of a user ID and password
Save and close the Web.config file.
If you receive an error stating that you do not have permissions to save the Web.config file, find the file inside the wwwroot folder and right-click on it. Select properties and go into the security tab. Click on the edit button and make sure that all users have “Full Control” over the file.
Go back to the “Internet Information Services (IIS) Manager” and on the right, make sure the server is running. You may now browse to your Enterprise CSET® Installation!
There are two ways to add a new user to your freshly created CSET® Stand-Alone. The first way is to register for a new account inside the CSET® application itself. This will require a valid mail host as user’s will be required to enter their email address and receive a confirmation email on your network.
The second way to add a new user to your CSET® Application is to use the “AddUser” program. This tool is intended more for testing purposes than company-wide use. It allows anybody to create a new user without the email check and should only be used by administrators. As such, do not place this program in a public or shared folder on your system. This tool can be downloaded from the CSET github page found here. Simply click on the "AddUser.zip" link to download the file.
Inside the “AddUser” folder, you will find a file called “AddCSETUser.exe”. It’s a config file. Open this file with a text editor such as notepad.
Double-click on the “AddCSETUser” application and a small dialog box should pop-up with entry fields to add a new CSET® User.
Inside your “wwwroot”, open the Web.config file.
An SSL certificate is a web technology that establishes a secure link between a web server and a browser. This link encrypts all data (such as passwords) so that your server is more secure.
This documentation is provided to assist users in installing and running CSET locally for development.
Note: VSCode and Visual studio are two diffent IDE's VS Code is used for Front end UI (CSETWenNg) while Visual Studio is used for the backend (CSETWebAPI)
cd cset
Here you can open VSCode and run these commands from the terminal within VSCode.
cd CSETWebNg
npm install
or npm i
ng serve
CSETWeb_Api.sin
for project file.Web.config
and change the settings in connectionStrings
according to CSET Configuration
This will open a window in the default web browser to confirm that the db is connected.
ng serve
node_modules
npm cache clear --force
npm install
ng serve
Package issues when running ng serve
Example: When Atampting to run the server, there is a issue that presents such as:
SyntaxError: Unexpected token 'if'
or when inspected via a log file:
[error] /Users/bob/projects/cset/CSETWebNg/node_modules/lodash/lodash.js:3980
if ((key === '__proto__' || key === 'constructor' || key === 'prototype')) {
^^
SyntaxError: Unexpected token 'if'
at wrapSafe (internal/modules/cjs/loader.js:1053:16)
at Module._compile (internal/modules/cjs/loader.js:1101:27)
...
Here the issue is with the package seen: lodash
To fix this simplie run npm install --save lodash
After installing, rerun server ng serve
To run production locally:
Copy values from:
../cset/CSETWebNg/src/environments/environment.ts
into
../cset/CSETWebNg/src/environments/environment.prod.ts
with production: true
then run ng serve --prod
Moustrap Error:
When compiling, an error shows:
ERROR in node_modules/angular2-hotkeys/lib/hotkeys.service.d.ts:10:16 - error TS2304: Cannot find name 'MousetrapInstance'.
10 mousetrap: MousetrapInstance;
~~~~~~~~~~~~~~~~~
** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
70% building 504/504 modules 0 active
ERROR in node_modules/angular2-hotkeys/lib/hotkeys.service.d.ts:10:16 - error TS2304: Cannot find name 'MousetrapInstance'.
10 mousetrap: MousetrapInstance;
Fix: open file location at node_modules/angular2-hotkeys/lib/hotkeys.service.d.ts
and fix the line where
mousetrap: MousetrapInstance;
to
mousetrap: Mousetrap.MousetrapInstance;
CSETWebApi not building.
On right side of Visual Studio, check under resorces for missing and un updated packages.
reimport and updarte packages as needed. recompile as needed.
Withing connectionStrings
in Web.config
check if creds are set correctly, for local db, the connetion string would look as follows.
<connectionStrings>
<add name="CSET_DB"
connectionString="data source=localhost;initial catalog=CSETWeb;persist security info=True;user id=user;password=password;MultipleActiveResultSets=True"/>
<add name="ElmahConn"
connectionString="data source=localhost;initial catalog=CSETWeb;persist security info=True;user id=user;password=password;MultipleActiveResultSets=True;App=Elmah"
providerName="System.Data.EntityClient"/>
<add name="HangfireConn"
connectionString="data source=localhost;initial catalog=CSETWeb;persist security info=True;user id=user;password=password;MultipleActiveResultSets=True;App=Hangfire"
providerName="System.Data.EntityClient"/>
</connectionStrings>
These settings will connect to a SQL DB running on localhost
with created user: user
with password: password
.
Double check CSET Configuration above for configuration.