Bulwark is an organizational asset and vulnerability management tool, with Jira integration, designed for generating application security reports.
Jira Integration
Note: Please keep in mind, this project is in early development.
Launch With Docker
.env file and supply the following properties:MYSQL_DATABASE=”bulwark”
MYSQL_PASSWORD=”bulwark”
MYSQL_ROOT_PASSWORD=”bulwark”
MYSQL_USER=”root”
MYSQL_DB_CHECK=”mysql”
DB_PASSWORD=”bulwark”
DB_URL=”172.16.16.3″
DB_ROOT=”root”
DB_USERNAME=”bulwark”
DB_PORT=3306
DB_NAME=”bulwark”
DB_TYPE=”mysql”
NODE_ENV=”production”
DEV_URL=”http://localhost:4200″
PROD_URL=”http://localhost:5000″
JWT_KEY=”changeme”
JWT_REFRESH_KEY=”changeme”
CRYPTO_SECRET=”changeme”
CRYPTO_SALT=”changeme”
Build and start Bulwark containers:
docker-compose up -d
Start/Stop Bulwark containers:
docker-compose start
docker-compose stop
Remove Bulwark containers:
docker-compose down
Bulwark will be available at localhost:5000
Local Installation
$ git clone (url)
$ cd bulwark
$ npm install
Run in development mode:
$ npm run start:dev
Run in production mode:
$ npm start
Environment Variables
Create a .env file on the root directory. This will be parsed with dotenv by the application.
DB_PASSWORDDB_PASSWORD="somePassword"
Set this variable to database password
DB_USERNAMEDB_USERNAME="foobar"
Set this variable to database user name
DB_URLDB_URL=something-foo-bar.dbnet
Set this variable to database URL
DB_PORTDB_PORT=3306
Set this variable to database port
DB_NAMEDB_NAME="foobar"
Set this variable to database connection name
DB_TYPEDB_TYPE="mysql"
The application was developed using a MySQL database. See the typeorm documentation for more database options.
NODE_ENVNODE_ENV=production
Set this variable to determine node environment
DEV_URL="http://localhost:4200"Only update if a different port is required
PROD_URL="http://localhost:5000"Only update if a different port is required
JWT_KEYJWT_KEY="changeMe"
Set this variable to the JWT secret
JWT_REFRESH_KEYJWT_REFRESH_KEY="changeMe"
Set this variable to the refresh JWT secret
CRYPTO_SECRETCRYPTO_SECRET="randomValue"
Set this variable to the Scrypt password.
CRYPTO_SALTCRYPTO_SECRET="randomValue"
Set this variable to the Scrypt salt.
.env file templateDB_PASSWORD=””
DB_URL=””
DB_USERNAME=””
DB_PORT=3306
DB_NAME=””
DB_TYPE=””
NODE_ENV=””
DEV_URL=”http://localhost:4200″
PROD_URL=”http://localhost:5000″
JWT_KEY=””
JWT_REFRESH_KEY=””
CRYPTO_SECRET=””
CRYPTO_SALT=””
Create Initial Database Migration
$ npm run migration:init
$ npm run migration:run
Default Credentials
A user account is created on initial startup with the following credentials:
admin@example.comchangeMeUpon first login, update the default user password under the profile section.
MySQL is the most popular open-source relational database management system. It is fast, reliable, and a…
Git is the most widely used version control system in the world. It was created by…
Go (also called Golang) is an open-source programming language built by Google. It is designed to…
Visual Studio Code (VS Code) is an open-source code editor developed by Microsoft. It is one…
Nginx (pronounced "engine x") is an open-source, high-performance web server and reverse proxy. It is used…
Apache is one of the most widely used open-source web servers in the world. It is…