All Projects → nemosupremo → Vault Gatekeeper

nemosupremo / Vault Gatekeeper

Licence: mit
A small service for securely delivering Vault authorization keys to Mesos tasks and ECS containers.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Vault Gatekeeper

microservices-demo.github.io
The Microservices Demo website.
Stars: ✭ 65 (-21.69%)
Mutual labels:  ecs, mesos, dcos
container-orchestration
A Benchmark for Container Orchestration Systems
Stars: ✭ 19 (-77.11%)
Mutual labels:  mesos, dcos
marathon-slack
Integration for Marathon's Event Bus with Slack
Stars: ✭ 42 (-49.4%)
Mutual labels:  mesos, dcos
dcos-k8s-rust-skaffold-demo
A demo of pipelining Rust application development to Kubernetes on DC/OS with Skaffold.
Stars: ✭ 40 (-51.81%)
Mutual labels:  mesos, dcos
Dcos Commons
DC/OS SDK is a collection of tools, libraries, and documentation for easy integration of technologies such as Kafka, Cassandra, HDFS, Spark, and TensorFlow with DC/OS.
Stars: ✭ 162 (+95.18%)
Mutual labels:  mesos, dcos
Microservices Demo
Deployment scripts & config for Sock Shop
Stars: ✭ 2,939 (+3440.96%)
Mutual labels:  ecs, mesos
Dcos
DC/OS - The Datacenter Operating System
Stars: ✭ 2,316 (+2690.36%)
Mutual labels:  mesos, dcos
Etcd Mesos
self-healing etcd on mesos!
Stars: ✭ 68 (-18.07%)
Mutual labels:  mesos, dcos
Marathon Lb
Marathon-lb is a service discovery & load balancing tool for DC/OS
Stars: ✭ 449 (+440.96%)
Mutual labels:  mesos, dcos
dcos-autoscaler
Autoscaler for DC/OS hosted in a cloud provider
Stars: ✭ 12 (-85.54%)
Mutual labels:  mesos, dcos
Scale
Processing framework for containerized algorithms
Stars: ✭ 100 (+20.48%)
Mutual labels:  mesos, dcos
Linkerdcosdockerfile
Linker Dcos DockerFile&DockerCompose yml file
Stars: ✭ 8 (-90.36%)
Mutual labels:  mesos, dcos
container-service-discovery
Service Discovery in Container Orchestration Frameworks on AWS
Stars: ✭ 45 (-45.78%)
Mutual labels:  ecs, dcos
dcos-deploy
Deploy, manage and orchestrate services and apps on DC/OS
Stars: ✭ 21 (-74.7%)
Mutual labels:  mesos, dcos
Scope
Monitoring, visualisation & management for Docker & Kubernetes
Stars: ✭ 5,247 (+6221.69%)
Mutual labels:  ecs, mesos
Acs Engine
WE HAVE MOVED: Please join us at Azure/aks-engine!
Stars: ✭ 1,049 (+1163.86%)
Mutual labels:  mesos, dcos
Spring Boot Vault Demo
Demo project to show the integration of spring-boot and Hashicorp Vault
Stars: ✭ 57 (-31.33%)
Mutual labels:  vault
Learning Unity Ecs 2
A bunch of small Unity projects where I explore and learn Unity's new ECS and Job System. Updated for the new API.
Stars: ✭ 65 (-21.69%)
Mutual labels:  ecs
Voxelman
Unity ECS + C# Job System example
Stars: ✭ 1,086 (+1208.43%)
Mutual labels:  ecs
Bastions On Demand
Create and destroy bastions on demand with Fargate.
Stars: ✭ 54 (-34.94%)
Mutual labels:  ecs

vault-gatekeeper

Build Status

Vault-Gatekeeper is a small service for delivering Vault token to other services who's lifecycles are managed by a container scheduler such as Mesos or ECS.

Vault-Gatekeeper takes the Cubbyhole Authenication approach outlined by Jeff Mitchell on Vault Blog. Specifically Vault response wrapping is used as outlined in the Vault documentation.

In short, a service will request a vault token from VG supplying its Mesos task id or ECS task arn. VG will then check with Mesos/ECS to ensure that the task has been recently started and that VG has not already issued a token for that task id. Then VG will check its configuration to understand what role that task is assigned and request a response wrapped token from Vault. VG will then pass the token to the service which can then unwrap the response with /sys/wrapping/unwrap to retrieve the token.

Requirements

  • Vault 0.6.2+
  • Mesos 1.0.0+ (if using Mesos)

Documentation

Visit http://nemosupremo.github.io/vault-gatekeeper

Quickstart

This guide assumes that you 1.) have a Vault instance running, 2.) have a Mesos instance running and 3.) have an approle policy in Vault named test.

  1. Install a sample policy in Vault
$ echo '{"mesos:*":{"roles":["test"],"num_uses":1}}' | ./gatekeeper policy update --vault-token 'MY_TOKEN' '-'
  1. Start a Gatekeeper instance
$ ./gatekeeper server --mesos-master 'http://leader.mesos:5050' --vault-addr http://localhost:8200
  1. Unseal the Gatekeeper instance with a token. (The token must have at least the policy defined in gatekeeper-policy.hcl).
$ ./gatekeeper unseal token --vault-token 'GK_TOKEN'
  1. Launch a task on mesos and retrieve a token:
$ curl -X POST -d"{\"task_id\":\"${MESOS_TASK_ID}\"}" 'http://gatekeeper-host/token'

Downloading

You can grab a binary from the releases or deploy the docker image nemosupremo/vault-gatekeeper.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].