Git Product home page Git Product logo

gcp-firewall-delegation's Introduction

Google Cloud Firewall Rule Management

This example repository provides an approach for managing Google Cloud firewall rules in a Shared VPC across multiple teams using a GitOps approach. The infrastructure is deployed using Terraform, and the deployment prcoess is automated with Cloud Build.

Setup

Initial Setup Steps

Complete the initial setup steps using these instructions. You'll only need to do this once.

Alternatively, you can use the following tutorial.

Team Configuration

To configure the repository for management by a delegated team, use these instructions. You'll need to complete these for each team.

Contributing

To contribute to this, create a pull request with your Firewall Rule. The pull request will trigger the automated validation of firewall rules using gcloud terraform vet (TODO). If any validation checks fail, the pull request will be blocked from merging.

Once the validation checks pass and the pull request is approved by one of the allowed approvers listed in the CODEOWNERS file, it can be merged. Merging the pull request will trigger the deployment of the updated firewall rules using Google Cloud Build and Terraform.

Priority Values

To avoid conflicts and ensure that each team's rules are evaluated in the desired order, each team is allocated a priority range.

For example, let's say you have three teams and you want to allocate equal priority blocks for each, you would configure your team-config.yaml file in this form:

Team1: [1000, 2000]
Team2: [2000, 3000]
Team3: [3000, 4000]

These priority ranges ensure that each team can only use a specific range of priorities to prevent conflicts and maintain organized rule evaluation order.

gcp-firewall-delegation's People

Contributors

zefdelgadillo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.