Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cyclenerd/google-cloud-iam
☁️ Google Cloud Identity and Access Management (IAM)
https://github.com/cyclenerd/google-cloud-iam
gcp gcp-iam google-cloud google-cloud-identity google-cloud-platform
Last synced: 3 months ago
JSON representation
☁️ Google Cloud Identity and Access Management (IAM)
- Host: GitHub
- URL: https://github.com/cyclenerd/google-cloud-iam
- Owner: Cyclenerd
- License: apache-2.0
- Created: 2023-04-02T15:03:50.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-05-01T04:43:48.000Z (9 months ago)
- Last Synced: 2024-05-01T20:02:42.363Z (9 months ago)
- Topics: gcp, gcp-iam, google-cloud, google-cloud-identity, google-cloud-platform
- Language: Perl
- Homepage: https://gcloud-iam.nkn-it.de/
- Size: 960 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Google Cloud Identity and Access Management (IAM)
[![Badge: Google Cloud](https://img.shields.io/badge/Google%20Cloud-%234285F4.svg?logo=google-cloud&logoColor=white)](#readme)
[![Badge: CI](https://github.com/Cyclenerd/google-cloud-iam/actions/workflows/build.yml/badge.svg)](https://github.com/Cyclenerd/google-cloud-iam/actions/workflows/build.yml)
[![Badge: GitHub](https://img.shields.io/github/license/cyclenerd/google-cloud-iam)](https://github.com/Cyclenerd/google-cloud-iam/blob/master/LICENSE)This webapp lists predefined roles and permissions for Google Cloud Platform Identity and Access Management (IAM).
I built it so that I can quickly search for permissions and identify the associated role.
The official [Google Documentation](https://cloud.google.com/iam/docs/understanding-roles) is too slow and messy for me.[![Screenshot](./img/permissions.png)](https://gcloud-iam.nkn-it.de/permissions.html)
## 🧑💻 Development
If you want to customize or run this webapp on your local computer,
you need the following requirements.### Requirements
* [Google Cloud CLI](https://cloud.google.com/sdk/docs/install) (`gcloud`)
* JSON processor (`jq`)
* Perl 5 (`perl`)
* Perl modules:
* [JSON::XS](https://metacpan.org/pod/JSON::XS)
* [Template::Toolkit](https://metacpan.org/pod/Template::Toolkit)
* [plackup](https://metacpan.org/dist/Plack/view/script/plackup)Debian/Ubuntu
Packages:
```shell
sudo apt update
sudo apt install \
libjson-xs-perl \
libtemplate-perl \
libplack-perl \
jq
```[Google Cloud CLI](https://cloud.google.com/sdk/docs/install#deb):
```shell
sudo apt-get install apt-transport-https ca-certificates gnupg
# Add the gcloud CLI distribution URI as a package source
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
# Import the Google Cloud public key.
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo tee /usr/share/keyrings/cloud.google.gpg
# Update and install the gcloud CLI
sudo apt-get update
sudo apt-get install google-cloud-cli
```macOS
Homebrew packages:
```shell
brew install perl
brew install cpanminus pkg-config
brew install --cask google-cloud-sdk
brew install jq
```Perl modules:
```shell
cpanm --installdeps .
```Build:
```shell
cd build
bash roles.sh
bash permissions.sh
perl build.pl
```Run:
```shell
plackup --host "127.0.0.1" --port "8080"
```## ❤️ Contributing
Have a patch that will benefit this project?
Awesome! Follow these steps to have it accepted.1. Please read [how to contribute](CONTRIBUTING.md).
1. Fork this Git repository and make your changes.
1. Create a Pull Request.
1. Incorporate review feedback to your changes.
1. Accepted!## 📜 License
All files in this repository are under the [Apache License, Version 2.0](LICENSE) unless noted otherwise.
Portions of this webapp are modifications based on work created and shared by [Google](https://developers.google.com/readme/policies)
and used according to terms described in the [Creative Commons 4.0 Attribution License](https://creativecommons.org/licenses/by/4.0/).