All Projects → TalEliyahu → Startup Aws Iam Roles

TalEliyahu / Startup Aws Iam Roles

A list of typical positions in a startup and their policies for IAM AWS.

Projects that are alternatives of or similar to Startup Aws Iam Roles

Cloudsplaining
Cloudsplaining is an AWS IAM Security Assessment tool that identifies violations of least privilege and generates a risk-prioritized report.
Stars: ✭ 1,057 (+795.76%)
Mutual labels:  aws, aws-iam, iam
Trackiam
A project to collate IAM actions, AWS APIs and managed policies from various public sources.
Stars: ✭ 115 (-2.54%)
Mutual labels:  aws, aws-iam, iam
Airiam
Least privilege AWS IAM Terraformer
Stars: ✭ 304 (+157.63%)
Mutual labels:  aws, aws-iam, iam
Terraform Aws Iam
Terraform module which creates IAM resources on AWS
Stars: ✭ 314 (+166.1%)
Mutual labels:  aws, aws-iam, iam
Aws Extend Switch Roles
Extend your AWS IAM switching roles by Chrome extension, Firefox add-on, or Edge add-on
Stars: ✭ 862 (+630.51%)
Mutual labels:  aws, aws-iam
Yle Aws Role
Tooling to help to assume AWS IAM roles
Stars: ✭ 11 (-90.68%)
Mutual labels:  aws, aws-iam
Kiam
Integrate AWS IAM with Kubernetes
Stars: ✭ 969 (+721.19%)
Mutual labels:  aws-iam, iam
Ssh Over Ssm
SSH over AWS SSM. No bastions or public-facing instances. SSH user management through IAM. No requirement to store SSH keys locally or on server.
Stars: ✭ 541 (+358.47%)
Mutual labels:  aws, iam
Userplex
Propagate users from Mozilla's Person API to third party systems.
Stars: ✭ 41 (-65.25%)
Mutual labels:  aws, iam
Get Aws Profile Bash
Fetch AWS keys and secrets from ~/.aws/credentials using a simple bash script
Stars: ✭ 49 (-58.47%)
Mutual labels:  aws, iam
Module Security Public
The public documentation for the gruntwork-io/module-security repo, which contains packages for setting up best practices for managing secrets, credentials, and servers
Stars: ✭ 67 (-43.22%)
Mutual labels:  aws, iam
Aws Serverless Auth Reference App
Serverless reference app and backend API, showcasing authentication and authorization patterns using Amazon Cognito, Amazon API Gateway, AWS Lambda, and AWS IAM.
Stars: ✭ 724 (+513.56%)
Mutual labels:  aws, iam
Awesome Startup
😎 All the required resources to build your own startup
Stars: ✭ 702 (+494.92%)
Mutual labels:  startup, startups
Terraform Aws Cross Account Role
A Terraform module to create an IAM Role for Cross Account delegation.
Stars: ✭ 30 (-74.58%)
Mutual labels:  aws, iam
Startup Kit Templates
CloudFormation templates to accelerate getting started on AWS.
Stars: ✭ 669 (+466.95%)
Mutual labels:  aws, startup
Startup Matrix
Startup Matrix exported to CSV, JSON, Markdown and HTML formats. Credits to original article by Eric Stromberg.
Stars: ✭ 66 (-44.07%)
Mutual labels:  startup, startups
Policy sentry
IAM Least Privilege Policy Generator
Stars: ✭ 1,284 (+988.14%)
Mutual labels:  aws, iam
Smart Security Camera
A Pi Zero and Motion based webcamera that forwards images to Amazon Web Services for Image Processing
Stars: ✭ 103 (-12.71%)
Mutual labels:  aws, aws-iam
Aws
A collection of bash shell scripts for automating various tasks with Amazon Web Services using the AWS CLI and jq.
Stars: ✭ 493 (+317.8%)
Mutual labels:  aws, iam
Aws Vault
A vault for securely storing and accessing AWS credentials in development environments
Stars: ✭ 5,626 (+4667.8%)
Mutual labels:  aws, iam

IAM Roles for Startups

Motivation

Many startups are now using AWS infrastructure for their company, but being new to AWS, they are unaware of the importance of IAM ROLES. It's hard to remember the importance of your permissions structure when you're just starting out. Our goal is to provide the initial hand holding for the business owner with setting up IAM Roles with basic templates to expedite the process of moving you to AWS. After all, security is of utmost importance, especially starting out. Not starting with the right structure is going to cause accumulation of technical debt.

This project focuses on creating a skeleton of IAM roles for startups or any company moving to AWS. This provides the company with the ability to get started with little or no modifications. For new companies (and even old companies), time is money. The less time you need to spend setting up permissions structures in AWS, the more money you have to build your company in other ways. We are here to help. The project focuses on multi-size startup companies:

  • Small - 5 people
  • Midsize - ~12 people
  • Large - 40 or above

Follow Us On alt text

Role of Security

In this project, we try to place security above everything. We are trying to avoid accidental deletions. We are assuming that every team member will log in from known IPs. As an added layer of security, we are making MFA mandatory for every user that logs in, even admins. To add the mandatory MFA, there is a policy called forceMfa.json that will need to be created and added to a group called FORCE_MFA. Each IAM user to be created, will need to be a part of the FORCE_MFA group. This policy will deny IAM user's access to AWS resources until they add their MFA and use it to authenticate.

Assumptions

Based on best practices in AWS, we are working with the following assumptions:

  • Presence of generic job roles.
  • Every user will log in from the companies external IP
  • Use of blacklist instead of whitelist to keep the roles tidy.

Job Profiles

We are considering job profiles across different verticals, i.e: business, finance, tech and ops.

read ROLES.md for role and its assumption details.

Setting Up Roles

For reach role that you are going to use, follow these steps:

  • Open the IAM Console in your AWS Account.
  • Click Policies and then Create Policy.
  • Click Groups and Create Groups. For the attached policy, choose the policy created above.
  • Click on the group you just made, and hit Add Users To Group. Add all users that fit this group.
  • ALL users need added to the FORCE_MFA group which has the FORCE_MFA policy attached.

Contributing

  • Fork it!
  • Create your feature branch: git checkout -b my-new-feature
  • stage your feature: git add <changed_file>
  • Commit your changes: git commit -m 'feat: add new feature' -m 'add my-new-feature, use it as: my-new-feautre(args)' -m 'closes #26'
  • Push to the branch: git push origin my-new-feature
  • Submit a pull request :D
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].