This repository has been archived by the owner on Apr 22, 2024. It is now read-only.
-
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
Showing
2 changed files
with
81 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,28 @@ | ||
# How to Contribute | ||
|
||
We'd love to accept your patches and contributions to this project. There are | ||
just a few small guidelines you need to follow. | ||
|
||
## Contributor License Agreement | ||
|
||
Contributions to this project must be accompanied by a Contributor License | ||
Agreement. You (or your employer) retain the copyright to your contribution; | ||
this simply gives us permission to use and redistribute your contributions as | ||
part of the project. Head over to <https://cla.developers.google.com/> to see | ||
your current agreements on file or to sign a new one. | ||
|
||
You generally only need to submit a CLA once, so if you've already submitted one | ||
(even if it was for a different project), you probably don't need to do it | ||
again. | ||
|
||
## Code reviews | ||
|
||
All submissions, including submissions by project members, require review. We | ||
use GitHub pull requests for this purpose. Consult | ||
[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more | ||
information on using pull requests. | ||
|
||
## Community Guidelines | ||
|
||
This project follows [Google's Open Source Community | ||
Guidelines](https://opensource.google.com/conduct/). |
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,53 @@ | ||
# authservice | ||
|
||
[![CI](https://github.com/tetrateio/authzervice-go/actions/workflows/ci.yaml/badge.svg)](https://github.com/tetrateio/authzervice-go/actions/workflows/ci.yaml) | ||
[![codecov](https://codecov.io/gh/tetrateio/authzervice-go/graph/badge.svg?token=LAmdH59zeK)](https://codecov.io/gh/tetrateio/authzervice-go) | ||
|
||
An implementation of [Envoy](https://envoyproxy.io) [External Authorization](https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/ext_authz_filter), | ||
focused on delivering authN/Z solutions for [Istio](https://istio.io) and [Kubernetes](https://kubernetes.io). | ||
|
||
## Introduction | ||
|
||
`authservice` helps delegate the [OIDC Authorization Code Grant Flow](https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowAuth) | ||
to the Istio mesh. `authservice` is compatible with any standard OIDC Provider as well as other Istio End-user Auth features, | ||
including [Authentication Policy](https://istio.io/docs/tasks/security/authn-policy/) and [RBAC](https://istio.io/docs/tasks/security/rbac-groups/). | ||
Together, they allow developers to protect their APIs and web apps without any application code required. | ||
|
||
Some of the features it provides: | ||
- Transparent login and logout | ||
- Retrieves OAuth2 Access tokens, ID tokens, and refresh tokens | ||
- Fine-grained control over which url paths are protected | ||
- Session management | ||
- Configuration of session lifetime and idle timeouts | ||
- Refreshes expired tokens automatically | ||
- Compatible with any standard OIDC Provider | ||
- Supports multiple OIDC Providers for same application | ||
- Trusts custom CA certs when talking to OIDC Providers | ||
- Works either at the sidecar or gateway level | ||
|
||
## Using the `authservice` docker image | ||
|
||
The `authservice` images are hosted on [authservice's GitHub Package Registry](https://github.com/istio-ecosystem/authservice/packages). | ||
|
||
## How does authservice work? | ||
|
||
We have created a [flowchart](https://miro.com/app/board/o9J_kvus6b4=/) to explain how authservice makes decisions at different points in the login lifecycle. | ||
|
||
## Contributing | ||
|
||
To get started: | ||
|
||
- [Contributing guide](./CONTRIBUTING.md) | ||
|
||
## Roadmap | ||
See the [authservice github Project](https://github.com/istio-ecosystem/authservice/projects/1) | ||
|
||
Additional features being considered: | ||
- A more Istio-integrated experience of deploying/configuring/enabling `authservice` | ||
(e.g.: extending Istio Authentication Policy to include `authservice` configs). | ||
|
||
## Contributing & Contact | ||
|
||
We welcome feedback and contributions. Aside from submitting Github issues/PRs, you can reach out at `#oidc-proposal` | ||
or `#security` channel on [Istio’s Slack](https://istio.slack.com/) workspace | ||
([here's how to join](https://istio.io/about/community/join/)). |