Pomerium is an identity and context-aware access proxy.
Find a file
dependabot[bot] 8429cfa286
chore(deps): bump github.com/ory/dockertest/v3 from 3.9.1 to 3.10.0 (#4111)
Bumps [github.com/ory/dockertest/v3](https://github.com/ory/dockertest) from 3.9.1 to 3.10.0.
- [Release notes](https://github.com/ory/dockertest/releases)
- [Commits](https://github.com/ory/dockertest/compare/v3.9.1...v3.10.0)

---
updated-dependencies:
- dependency-name: github.com/ory/dockertest/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-17 13:46:09 -06:00
.github chore(deps): bump coverallsapp/github-action from 2.0.0 to 2.1.0 (#4100) 2023-04-10 11:52:54 -06:00
.vscode use tlsClientConfig instead of custom dialer (#3830) 2022-12-27 09:55:36 -07:00
authenticate authenticate: have an option to trim the contents of the callback (#4090) 2023-03-31 11:48:31 -04:00
authorize move hpke public key handler out of internal (#4065) 2023-03-20 10:37:00 -04:00
cmd/pomerium
config support loading route configuration via rds (#4098) 2023-04-17 11:20:12 -06:00
databroker remove log message when no provider defined (#3936) 2023-02-14 13:28:12 -07:00
examples Update grafana.ini.yml (#4045) 2023-03-08 09:18:50 -07:00
integration authenticate: implement hpke-based login flow (#3779) 2022-12-05 15:31:07 -07:00
internal support loading route configuration via rds (#4098) 2023-04-17 11:20:12 -06:00
ospkg
pkg support loading route configuration via rds (#4098) 2023-04-17 11:20:12 -06:00
proxy move hpke public key handler out of internal (#4065) 2023-03-20 10:37:00 -04:00
scripts envoy: optimize listener (#3952) 2023-02-11 22:44:57 -05:00
ui authenticate: add additional error details for hmac errors (#3878) 2023-01-11 07:53:11 -07:00
.codecov.yml
.dockerignore
.fossa.yml
.gitattributes
.gitignore add google cloud creds to ignore (#3906) 2023-01-17 21:44:02 -07:00
.golangci.yml
.pre-commit-config.yaml
.tool-versions
3RD-PARTY
DEBUG.MD
Dockerfile chore(deps): bump golang from 413cd9e to 73c225b (#4114) 2023-04-17 13:39:21 -06:00
Dockerfile.debug chore(deps): bump golang from 413cd9e to 73c225b (#4114) 2023-04-17 13:39:21 -06:00
go.mod chore(deps): bump github.com/ory/dockertest/v3 from 3.9.1 to 3.10.0 (#4111) 2023-04-17 13:46:09 -06:00
go.sum chore(deps): bump github.com/ory/dockertest/v3 from 3.9.1 to 3.10.0 (#4111) 2023-04-17 13:46:09 -06:00
LICENSE
Makefile
pomerium.go
README.md
RELEASING.md
SECURITY.md
tools.go

pomerium logo

pomerium chat GitHub Actions Go Report Card GoDoc LICENSE Docker Pulls

Pomerium is an identity and context-aware reverse proxy that brokers secure access to apps and services at scale. Pomerium provides a standardized interface to add access control to applications regardless of whether the application itself has authorization or authentication baked-in.

Pomerium can be used in situations where you'd typically reach for a VPN, but, unlike a VPN, does not require a client and uses identity and context, not network locality to determine access.

Pomerium can be used to:

  • provide a single-sign-on gateway to internal applications.
  • enforce dynamic access policy based on context, identity, and device identity.
  • aggregate access logs and telemetry data.
  • a VPN alternative.

Docs

For comprehensive docs, and tutorials see our documentation.

Integration Tests

To run the integration tests locally, first build a local development image:

./scripts/build-dev-docker.bash

Next go to the integration/clusters folder and pick a cluster, for example google-single, then use docker-compose to start the cluster. We use an environment variable to specify the dev docker image we built earlier:

cd integration/clusters/google-single
env POMERIUM_TAG=dev docker-compose up -V

Once that's up and running you can run the integration tests from another terminal:

go test -count=1 -v ./integration/...

If you need to make a change to the clusters themselves, there's a tpl folder that contains jsonnet files. Make a change and then rebuild the clusters by running:

go run ./integration/cmd/pomerium-integration-tests/ generate-configuration