1
0
Fork 0
Data collection, validation, and processing framework for JavaScript [archive]
 
 
 
 
 
 
Go to file
Mike Gerwitz 6733556582 Remove hard-coded skey
This wasn't intended to make its way into a public repo. :)

The existing key was a long-forgotten kluge that was supposed to be
temporary, allowing internal services to create quotes without
authentication.  The chances of this being practically exploited are minimal
in our environment, and it's auditable using webserver logs.

This moves the skey into a configuration file, which allows it to vary by
server and be rotated until a better solution is made available.  skey is
disabled by default (empty string), and when used by us internally, the keys
are now generated using a CSPRNG rather than a brute-forcable 5-byte key
that was hard-coded.

The fact that this appears in webserver logs is a big issue as well.  I
added a task to address that.

* conf/vanilla-server.json (skey): New key.  Default empty.
* src/server/daemon/Daemon.js (start): Provide skey to `#getRouters'.
  (getRouters): Provide skey to `#getProgramController'.
  (getProgramController): Set skey on `controller'.
* src/server/daemon/controller.js (skey): New mutable export (unideal; quick
    change).
  (has_skey): Use it.
2018-04-03 15:29:47 -04:00
bin bin/server.in: exec 2017-10-06 11:18:56 -04:00
build-aux Generate version number from git state 2017-08-15 15:18:21 -04:00
conf Remove hard-coded skey 2018-04-03 15:29:47 -04:00
doc client: Truncate diff posted to server after first null 2018-03-07 13:46:05 -05:00
src Remove hard-coded skey 2018-04-03 15:29:47 -04:00
test GeneralStepUiTest: Fix failing test case in newer version of Node 2018-03-07 14:12:48 -05:00
tools LoVullo Associates => R-T Specialty 2017-06-08 14:48:43 -04:00
.gitignore Add bin/server to invoke server using configure'd node 2017-08-29 14:56:13 -04:00
.gitlab-ci.yml Only publish GitLab pages for tags 2017-08-23 14:29:51 -04:00
COPYING Placeholder README.md and license 2014-01-16 11:44:02 -05:00
COPYING.AGPL Near-complete liberation of liza 2017-06-08 14:38:28 -04:00
Makefile.am Add missing bin/server.js to distribution 2017-09-01 16:11:22 -04:00
README.hacking README.hacking: Mention of distdir 2018-02-06 15:46:23 -05:00
README.md Add information for invoking `make' 2017-09-06 14:18:02 -04:00
autogen.sh LoVullo Associates => R-T Specialty 2017-06-08 14:48:43 -04:00
configure.ac Add information for invoking `make' 2017-09-06 14:18:02 -04:00
index.js LoVullo Associates => R-T Specialty 2017-06-08 14:48:43 -04:00
npm-shrinkwrap.json Cmatch: Fix combined show/hide of same field, multi-index 2018-02-09 11:55:46 -05:00
package.json.in Update package.json license to {=>A}GPLv3+ 2017-09-08 14:23:34 -04:00
yarn.lock Add missing mongodb dependency 2017-06-20 14:17:03 -04:00

README.md

Liza Data Collection Framework

Liza is a data collection, validation, and processing framework for JavaScript.

About

The Liza Data Collection Framework—"Liza" for short—is an effort to clean up, formalize, and expand upon a framework that was developed at RT Specialty / LoVullo for collecting, validating, and processing large amounts of user input for insurance quoting.

Configuring

If your distribution does not contain a `configure' file in the project root, then you likely have the sources as committed to the project repository; you may generate the script by issuing the following command:

  $ ./autogen.sh

You may then see ./configure --help for more information.

Building

If configure is not available, see the section "Configuring" above.

  $ ./configure   # see --help for optional arguments
  $ make          # build
  $ make check    # run test cases

Documentation

Compiled documentation for the latest release is available via our GitLab mirror, which uses the same build pipeline as we do on our internal GitLab instance. Available formats are:

License

Liza is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

The liza server is licensed differently: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

The full licenses are available in COPYING and COPYING.AGPL.