Skip to content
This repository has been archived by the owner on Apr 22, 2024. It is now read-only.

Commit

Permalink
Added README
Browse files Browse the repository at this point in the history
  • Loading branch information
nacx committed Feb 9, 2024
1 parent 78b3dad commit efe8971
Show file tree
Hide file tree
Showing 2 changed files with 81 additions and 0 deletions.
28 changes: 28 additions & 0 deletions CONTRIBUTING.md
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/).
53 changes: 53 additions & 0 deletions README.md
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/)).

0 comments on commit efe8971

Please sign in to comment.