1.1.1 • Published 2 years ago

@yetanothertool/siamm v1.1.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Project Logo




About

Simple IAM Manager

Technologies

This section covers the tools and packages used for the project,

  • NodeJS

Getting Started

Prerequisites

  • NodeJS
  • AWS

Installation

npm install -g @yetanothertool/siamm

Usage

The template

[
  {
    "username": "provisioning",
    "policies": [
      "devops-role-assume",
      "security-role-assume",
      "support-role-assume"
    ]
  },
  {
    "username": "tgingras",
    "policies": [
      "devops-role-assume",
      "security-role-assume",
      "support-role-assume"
    ],
    "groups": ["administrators"]
  }
]

CLI

export AWS_REGION=ca-central-1
export AWS_PROFILE=default
yat-siaam --template ./users.json --update --create --cleanup
yat-siaam --template ./users.json --update --accountId 012345678901
yat-siaam --template ./users.json --update --assumeRole devops
yat-siaam --template ./users.json --update --create --cleanup --assumeRole devops --accountId 012345678901
OptionDescription
--templateJSON file with the user definition
--accountIdTarget AWS Account that has IAM Users (Default: The account associated with your profile)
--assumeRoleAssume role in the targetted account (Default: 'OrganizationAccountAccessRole')
--updateUpdate Managed Policies, groups and users
--createCreate missing users
--cleanupDelete users that aren't in the local JSON file

Contributing

  1. Create a Feature Branch
  2. Commit your changes
  3. Push your changes
  4. Create a PR

Branch Checkout:

git checkout -b <feature|fix|release|chore|hotfix>/prefix-name

Your branch name must starts with feature|fix|release|chore|hotfix and use a / before the name; Use hyphens as separator; The prefix correspond to your Kanban tool id (e.g. abc-123)

Keep your branch synced:

git fetch origin
git rebase origin/master

Commit your changes:

git add .
git commit -m "<feat|ci|test|docs|build|chore|style|refactor|perf|BREAKING CHANGE>: commit message"

Follow this convention commitlint for your commit message structure

Push your changes:

git push origin <feature|fix|release|chore|hotfix>/prefix-name

Examples:

git checkout -b release/v1.15.5
git checkout -b feature/abc-123-something-awesome
git checkout -b hotfix/abc-432-something-bad-to-fix
git commit -m "docs: added awesome documentation"
git commit -m "feat: added new feature"
git commit -m "test: added tests"

License

Distributed under the MIT License. See LICENSE for more information.

Contact

  • Tommy Gingras @ tommy@studiowebux.com