The main API server for yFuzz.
yFuzz will read configuration from a file called config.yaml
(or any other format supported by viper) located either in $HOME/.yfuzz
, /etc/yfuzz
, or the current directory.
Options can also be specified in environment variables with the YFUZZ_
prefix.
See config-sample.yaml
for sample configuration.
The simplest way to run the server is as a docker container:
$ docker run -v "$(pwd)"/config.yaml:/etc/yfuzz/config.yaml yfuzz/server
A number of plugins to the yFuzz API are supported:
- Athenz: Authorize requests with Athenz.
- MTLS: Authenticate requests with mutual TLS and authorize based on a list of authorized keys.
API endpoints are documented with godoc.
yFuzz is currently accessible through the use of the yFuzz CLI.
To build the server, you will need Go, Glide, and Make.
There are two ways to build the yFuzz server: on your system, and as a docker image.
$ git clone https://github.com/yahoo/yfuzz.git
$ cd yfuzz/services/yfuzz-server
$ make install
$ git clone https://github.com/yahoo/yfuzz.git
$ cd yfuzz/services/yfuzz-server
$ make docker