Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

A terminal-based game for learning AWS security best practices through interactive challenges. This game provides hands-on experience with DevSecOps principles in the AWS cloud environment.

Notifications You must be signed in to change notification settings

pxkundu/aws-devsecops-gamify-learning

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AWS DevSecOps Game

A terminal-based game for learning AWS security best practices through interactive challenges. This game provides hands-on experience with DevSecOps principles in the AWS cloud environment.

Prerequisites

Before you begin, ensure you have the following prerequisites installed:

  • Python 3.11+ - The game is built with Python 3.11 or later
  • AWS CLI v2 - AWS Command Line Interface for interacting with AWS services
  • Docker (optional) - Required for container security challenges
  • A terminal with color support - For the best experience with the Rich UI

AWS Credentials Setup

The game requires valid AWS credentials to function. It uses read-only AWS operations by default, but you'll need proper credentials configured:

  1. Create an IAM User (recommended):

    • Sign in to your AWS Management Console
    • Navigate to IAM and create a new user with programmatic access
    • Attach the ReadOnlyAccess managed policy (this provides secure, read-only access)
  2. Configure your credentials using one of these methods:

    a. Using AWS CLI:

    aws configure

    b. Environment variables:

    export AWS_ACCESS_KEY_ID=your_access_key
    export AWS_SECRET_ACCESS_KEY=your_secret_key
    export AWS_REGION=your_preferred_region  # e.g., us-east-1

    c. Creating credentials file manually:

    mkdir -p ~/.aws
    cat > ~/.aws/credentials << EOF
    [default]
    aws_access_key_id = your_access_key
    aws_secret_access_key = your_secret_key
    EOF
    
    cat > ~/.aws/config << EOF
    [default]
    region = your_preferred_region
    EOF
  3. Verify your configuration:

    aws sts get-caller-identity

    If successful, you'll see your AWS account information.

Installation

  1. Clone or download this repository:

    git clone https://github.com/yourusername/aws-devsecops-game.git
    cd aws-devsecops-game
  2. Create a virtual environment (optional but recommended):

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
  3. Install dependencies:

    pip install -r requirements.txt

Running the Game

Start the game by running:

python main.py

If you get a permissions error, make the script executable:

chmod +x main.py
python main.py

Game Features

  • Interactive CLI: Navigate through scenarios using a Rich-powered terminal interface
  • Progressive Difficulty: Scenarios increase in complexity as you learn
  • Read-Only Operations: By default, all AWS operations are read-only for safety
  • Save/Resume: Your progress is automatically saved
  • Real-World Scenarios: Based on actual DevSecOps challenges and AWS best practices

Security

This game is designed with security in mind:

  • All AWS operations are read-only by default
  • Any operations that would modify AWS resources require explicit confirmation
  • No sensitive AWS credential information is logged or stored

Topics Covered

  • IAM permissions and least privilege principle
  • Security group configurations
  • Cloud infrastructure security
  • Compliance and audit
  • Container security
  • CI/CD security integration

Troubleshooting

  • Invalid AWS Credentials: Ensure your AWS credentials are valid and have read access permissions
  • Missing Dependencies: Verify all dependencies are installed with pip install -r requirements.txt
  • Permission Issues: Ensure the main.py file is executable (chmod +x main.py)
  • Display Issues: Ensure your terminal supports colors and Unicode characters for the best experience

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A terminal-based game for learning AWS security best practices through interactive challenges. This game provides hands-on experience with DevSecOps principles in the AWS cloud environment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.