-
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
dd1fc31
commit c8ccc28
Showing
1 changed file
with
27 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Kani | ||
<strong>A Traefik ForwardAuth server for Cloudflare Access</strong><br /><br /> | ||
[](https://hub.docker.com/r/joshuasing/kani) | ||
[](https://hub.docker.com/r/joshuasing/kani) | ||
[](LICENSE)<br/> | ||
 | ||
 | ||
|
||
## What is Kani? | ||
[Kani (カニ)](https://ja.wikipedia.org/wiki/カニ) ([Pronunciation](http://ipa-reader.xyz/?text=kan%CA%B2i)) means Crab in Japanese. | ||
I'm not entirely sure what I decided to use this name, but here we are. | ||
Kani is designed to be a [Traefik](https://github.com/traefik/traefik) ForwardAuth server for validating [Cloudflare Access](https://www.cloudflare.com/products/zero-trust/access/) requests. | ||
|
||
When a request is proxied through Cloudflare Access, a signed JWT token will be sent to the backend (Traefik in this case) as an HTTP header. | ||
Since the JWT token is signed, we can get the public keys from Cloudflare Access to validate that it was indeed issued by Cloudflare Access. | ||
|
||
|
||
## Why use Kani? | ||
It is recommended to use Kani when you are using Cloudflare Access in-front of a service that is behind Traefik. | ||
Kani allows Traefik to validate that the request actually went through Cloudflare Access and that the user was granted access, therefore preventing people from bypassing Cloudflare Access. | ||
|
||
## Getting started | ||
**See examples in [examples/](examples)**. | ||
|
||
### License | ||
Kani is licensed under the terms of the MIT License. | ||
See [LICENSE](LICENSE) for the full license. |