Pomerium is an identity and context-aware access proxy.
Find a file
2022-06-15 20:29:19 -04:00
.devcontainer try pinning docker dependency (#3185) 2022-03-23 13:47:35 -06:00
.github revert docker changes (#3429) 2022-06-15 11:05:22 -06:00
.vscode config related metrics (#2065) 2021-04-07 12:29:36 -07:00
authenticate authenticate: fix internal service URL dashboard redirect (#3305) 2022-04-29 08:09:28 -06:00
authorize authorize: allow missing user for authorization (#3421) 2022-06-14 05:44:34 -06:00
cmd/pomerium allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
config allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
databroker allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
examples docs: update references, remove docs dir (#3420) 2022-06-13 16:52:52 -07:00
integration integration: use postgres instead of redis for tests (#3390) 2022-06-03 15:15:08 -06:00
internal allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
ospkg updates examples for current routes/policy keys (#3034) 2022-02-16 14:06:52 -06:00
pkg allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
proxy docs: update references, remove docs dir (#3420) 2022-06-13 16:52:52 -07:00
scripts allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
ui allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
.codecov.yml
.dockerignore frontend: react+mui (#3004) 2022-02-07 08:47:58 -07:00
.fossa.yml rm cli code (#2824) 2021-12-15 16:25:21 -05:00
.gitattributes assets: use embed instead of statik (#1960) 2021-03-03 18:56:55 -07:00
.gitignore allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
.golangci.yml userinfo: fix logout button, add sign out confirm page (#3058) 2022-02-23 08:15:00 -07:00
.pre-commit-config.yaml integration: add single-cluster integration tests (#2516) 2021-08-24 15:35:05 -06:00
3RD-PARTY dependencies: vendor base58, remove shortuuid (#2739) 2021-11-02 09:23:15 -06:00
DEBUG.MD
Dockerfile storage: add filter expressions, upgrade go to 1.18.1 (#3365) 2022-05-16 20:09:50 -06:00
Dockerfile.debug storage: add filter expressions, upgrade go to 1.18.1 (#3365) 2022-05-16 20:09:50 -06:00
go.mod chore(deps): bump google.golang.org/api from 0.82.0 to 0.83.0 (#3416) 2022-06-13 10:15:11 -06:00
go.sum chore(deps): bump google.golang.org/api from 0.82.0 to 0.83.0 (#3416) 2022-06-13 10:15:11 -06:00
LICENSE
Makefile allow pomerium to be embedded as a library (#3415) 2022-06-15 20:29:19 -04:00
pomerium.go fix go get, improve redis test (#2450) 2021-08-06 12:07:20 -06:00
README.md docs: update references, remove docs dir (#3420) 2022-06-13 16:52:52 -07:00
RELEASING.md ci: rename master to main (#3045) 2022-02-15 16:02:40 -05:00
SECURITY.md symlink security policy to root of project (#2396) 2021-07-26 10:42:21 -07:00
tools.go protoc: add xds repo (#2687) 2021-10-19 14:36:23 -06:00

pomerium logo

pomerium chat GitHub Actions Go Report Card GoDoc LICENSE Docker Pulls

Pomerium is an identity-aware proxy that enables secure access to internal applications. Pomerium provides a standardized interface to add access control to applications regardless of whether the application itself has authorization or authentication baked-in. Pomerium gateways both internal and external requests, and can be used in situations where you'd typically reach for a VPN.

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