gke-vault-demo | demo builds two GKE Clusters and guides | Identity Management library

 by   GoogleCloudPlatform Shell Version: Current License: Apache-2.0

kandi X-RAY | gke-vault-demo Summary

kandi X-RAY | gke-vault-demo Summary

gke-vault-demo is a Shell library typically used in Security, Identity Management applications. gke-vault-demo has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

[Hashicorp Vault][1] secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets. In addition, Vault offers unique capabilities for centrally managing secrets used by application pods inside a [Google Kubernetes Engine][6] cluster. For example, Vault supports authenticating application pods via the Kubernetes Service Account, audit logging of clients accessing/using secrets, automatic credential expiration, credential rotation, and more. Many new users to Kubernetes leverage the built-in secrets object to store sensitive data used by their application pods. However, storing secret data in YAML files checked into source control is not a recommended approach for several security reasons. The secret data is statically defined, difficult to change, difficult to control access to, and difficult to keep off developer filesystems and CI/CD systems. As a best practice, secrets should not kept alongside the application in the same YAML manifests. They should be stored in a central secrets management system such as Vault and fetched at runtime only by the application or process that needs them. Should those secrets ever become compromised, the process of revoking, auditing, and rotating the secrets is simple since they are centrally controlled and managed with Vault. Building and running a highly-available Vault cluster on a dedicated GKE cluster is outside the scope of this demo, so this codebase leverages [Seth Vargo’s Vault-on-GKE][2] repository as a [Terraform][5] module. Seth’s repository stands up a separate, highly-availabile GKE cluster running the Vault cluster components with Google Cloud Storage for a highly durable secrets storage backend. This demo deploys two private Kubernetes Engine Clusters into separate GCP projects. One cluster is dedicated to running [Vault][1] and is built using [Seth Vargo’s Vault-on-GKE][2] [Terraform][5] repository. The second cluster holds the applications that will fetch and use secrets from the Vault cluster. The walkthrough covers creating and storing secrets in Vault, using Kubernetes authentication from within a pod to login to Vault, and fetching short-lived Google Service Account credentials on-demand from Vault within a pod. These examples demonstrate the most common usage patterns of Vault from pods within another Kubernetes cluster.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              gke-vault-demo has a low active ecosystem.
              It has 60 star(s) with 20 fork(s). There are 17 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 0 open issues and 1 have been closed. On average issues are closed in 2 days. There are 14 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of gke-vault-demo is current.

            kandi-Quality Quality

              gke-vault-demo has 0 bugs and 0 code smells.

            kandi-Security Security

              gke-vault-demo has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              gke-vault-demo code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              gke-vault-demo is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              gke-vault-demo releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of gke-vault-demo
            Get all kandi verified functions for this library.

            gke-vault-demo Key Features

            No Key Features are available at this moment for gke-vault-demo.

            gke-vault-demo Examples and Code Snippets

            No Code Snippets are available at this moment for gke-vault-demo.

            Community Discussions

            QUESTION

            In Kubernetes, Expose secrets in file as environment variables
            Asked 2020-Mar-20 at 07:37

            In Kubernetes, how can I expose secrets in a file (in a Kubernetes volume) as environment variables instead?

            Background:
            I followed the Google Cloud Platform GKE Vault Demo and in it, they show how to "continuously fetching a secret's contents onto a local file location. This allows the application to read secrets from a file inside the pod normally without needing to be modified to interact with Vault directly."

            I would like to know how I can expose these secrets as environment variables (instead of a file) for the other application containers to use.

            ...

            ANSWER

            Answered 2019-May-16 at 08:38

            I found out how to inject the secrets from the file into the application container.

            First, the secrets file should be in the form KEY="VALUE" on each line.
            For those using Consul Template to get the secrets from Vault, you can do it as such:

            Source https://stackoverflow.com/questions/55962949

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install gke-vault-demo

            If you are not running on Google Cloud Shell, you will need to install the Google Cloud SDK. The Google Cloud SDK is used to interact with your GCP resources. [Installation instructions](https://cloud.google.com/sdk/downloads) for multiple platforms are available online.
            If you are not running on Google Cloud Shell, you will need to install kubectl. The kubectl CLI is used to interteract with both Kubernetes Engine and kubernetes in general. [Installation instructions](https://kubernetes.io/docs/tasks/tools/install-kubectl/) for multiple platforms are available online.
            Terraform is used to automate the manipulation of cloud infrastructure. Its [installation instructions](https://www.terraform.io/intro/getting-started/install.html) are also available online.
            The Vault CLI binary is used to connect to the Vault cluster to set configuration and retrieve secrets. Follow the [installation instructions](https://learn.hashicorp.com/vault/getting-started/install) to install the binary for your platform.

            Support

            The scripts/auth-to-vault.sh script exits with an error requiring vault to be installed. **. Follow the [installation instructions](https://learn.hashicorp.com/vault/getting-started/install) to install the binary for your platform. If you’ve modified the kubernetes_master_authorized_networks variable in scripts/generate-tfvars.sh, ensure your workstation’s source IP is included in the list of allowed subnets. Run make teardown, modify scripts/generate-tfvars.sh to include the correct subnets, and re-run make create.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/GoogleCloudPlatform/gke-vault-demo.git

          • CLI

            gh repo clone GoogleCloudPlatform/gke-vault-demo

          • sshUrl

            git@github.com:GoogleCloudPlatform/gke-vault-demo.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Identity Management Libraries

            vault

            by hashicorp

            k9s

            by derailed

            keepassxc

            by keepassxreboot

            keycloak

            by keycloak

            uuid

            by uuidjs

            Try Top Libraries by GoogleCloudPlatform

            microservices-demo

            by GoogleCloudPlatformPython

            terraformer

            by GoogleCloudPlatformGo

            training-data-analyst

            by GoogleCloudPlatformJupyter Notebook

            python-docs-samples

            by GoogleCloudPlatformJupyter Notebook

            golang-samples

            by GoogleCloudPlatformGo