├── .dockerignore ├── .gitignore ├── CONTRIBUTING.md ├── DCO ├── Dockerfile ├── LICENSE ├── NOTICE ├── README.md ├── bill-of-materials.json ├── cmd └── jwtproxy │ └── main.go ├── code-of-conduct.md ├── config.example.yaml ├── config └── config.go ├── examples ├── httpserver │ ├── Procfile │ ├── README.md │ ├── mykey.crt │ ├── mykey.key │ ├── mykey.pub │ ├── reverseProxy.key │ ├── signer.yaml │ └── verifier.yaml └── kubernetes-httpserver │ ├── README.md │ ├── mykey.key │ ├── mykey.pub │ ├── nginx-app.yaml │ ├── nginx.conf │ ├── signer.yaml │ ├── tester-app.yaml │ └── verifier.yaml ├── glide.lock ├── glide.yaml ├── go.mod ├── go.sum ├── jwt ├── claims │ ├── static │ │ └── static.go │ └── verifier.go ├── jwt.go ├── jwt_test.go ├── keyserver │ ├── keyregistry │ │ ├── README.md │ │ ├── keycache │ │ │ ├── keycache.go │ │ │ └── memory │ │ │ │ └── memory.go │ │ └── keyregistry.go │ ├── keyserver.go │ ├── preshared │ │ └── preshared.go │ └── result.go ├── noncestorage │ ├── local │ │ └── local.go │ └── noncestorage.go ├── privatekey │ ├── autogenerated │ │ └── autogenerated.go │ ├── preshared │ │ └── preshared.go │ └── privatekey.go └── proxy_handlers.go ├── jwtproxy.go ├── proxy └── proxy.go └── stop └── stopper.go /.dockerignore: -------------------------------------------------------------------------------- 1 | .git 2 | .gitignore 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | *.prof 25 | 26 | cmd/jwtproxy/jwtproxy 27 | jwtproxy 28 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # How to Contribute 2 | 3 | CoreOS projects are [Apache 2.0 licensed](LICENSE) and accept contributions via 4 | GitHub pull requests. This document outlines some of the conventions on 5 | development workflow, commit message formatting, contact points and other 6 | resources to make it easier to get your contribution accepted. 7 | 8 | # Certificate of Origin 9 | 10 | By contributing to this project you agree to the Developer Certificate of 11 | Origin (DCO). This document was created by the Linux Kernel community and is a 12 | simple statement that you, as a contributor, have the legal right to make the 13 | contribution. See the [DCO](DCO) file for details. 14 | 15 | # Email and Chat 16 | 17 | The project currently uses the general CoreOS email list and IRC channel: 18 | - Email: [coreos-dev](https://groups.google.com/forum/#!forum/coreos-dev) 19 | - IRC: #[coreos](irc://irc.freenode.org:6667/#coreos) IRC channel on freenode.org 20 | 21 | Please avoid emailing maintainers found in the MAINTAINERS file directly. They 22 | are very busy and read the mailing lists. 23 | 24 | ## Getting Started 25 | 26 | - Fork the repository on GitHub 27 | - Read the [README](README.md) for build and test instructions 28 | - Play with the project, submit bugs, submit patches! 29 | 30 | ## Contribution Flow 31 | 32 | This is a rough outline of what a contributor's workflow looks like: 33 | 34 | - Create a topic branch from where you want to base your work (usually master). 35 | - Make commits of logical units. 36 | - Make sure your commit messages are in the proper format (see below). 37 | - Push your changes to a topic branch in your fork of the repository. 38 | - Make sure the tests pass, and add any new tests as appropriate. 39 | - Submit a pull request to the original repository. 40 | 41 | Thanks for your contributions! 42 | 43 | ### Format of the Commit Message 44 | 45 | We follow a rough convention for commit messages that is designed to answer two 46 | questions: what changed and why. The subject line should feature the what and 47 | the body of the commit should describe the why. 48 | 49 | ``` 50 | scripts: add the test-cluster command 51 | 52 | this uses tmux to setup a test cluster that you can easily kill and 53 | start for debugging. 54 | 55 | Fixes #38 56 | ``` 57 | 58 | The format can be described more formally as follows: 59 | 60 | ``` 61 | : 62 | 63 | 64 | 65 |