Skip to content

Giridhar706/AWS_s3-Cloud_Tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AWS S3 Cloud Tools

A collection of AWS S3 utilities developed using C# and .NET.

This repository contains multiple AWS S3-based applications demonstrating cloud storage operations using AWS SDK for .NET.


Projects Included

1. AWS S3 File Downloader

A console application that:

  • Downloads files from an AWS S3 bucket
  • Checks whether the file exists
  • Handles exceptions and invalid file requests

Features

  • Secure AWS SDK integration
  • File existence validation
  • Error handling
  • Simple console-based interface

2. AWS S3 File Listing

A console application that:

  • Connects to AWS S3
  • Retrieves and displays all files from an S3 bucket

Features

  • Displays bucket contents
  • AWS SDK integration
  • IAM-based secure access
  • Exception handling

3. AWS S3 Image Uploader

A console application that:

  • Uploads images to AWS S3
  • Generates unique file names using UUID
  • Generates public URLs for uploaded images

Features

  • Public image URL generation
  • Unique filename generation
  • Image validation
  • Error handling

Technologies Used

  • C#
  • .NET 8
  • AWS SDK for .NET
  • Amazon S3
  • AWS CLI

Project Structure

AwsS3Downloader/
AwsS3FileListing/
AwsS3ImageUploader/

Prerequisites

  • .NET SDK 8.0+
  • AWS CLI
  • AWS Account
  • S3 Bucket

Install AWS CLI

Download: https://aws.amazon.com/cli/

Verify:

aws --version

Configure AWS Credentials

Run:

aws configure

Enter:

  • AWS Access Key ID
  • AWS Secret Access Key
  • Region
  • Output Format

Install Dependencies

Run inside each project folder:

dotnet restore

Run Applications

File Downloader

dotnet run

File Listing

dotnet run

Image Uploader

dotnet run

AWS IAM Permissions

Downloader Permissions

{
  "Effect": "Allow",
  "Action": [
    "s3:GetObject",
    "s3:HeadObject"
  ],
  "Resource": "arn:aws:s3:::your-bucket-name/*"
}

File Listing Permissions

{
  "Effect": "Allow",
  "Action": [
    "s3:ListBucket"
  ],
  "Resource": "arn:aws:s3:::your-bucket-name"
}

Image Upload Permissions

{
  "Effect": "Allow",
  "Action": [
    "s3:PutObject",
    "s3:GetObject"
  ],
  "Resource": "arn:aws:s3:::your-bucket-name/*"
}

Features

  • AWS S3 Integration
  • Secure Cloud Storage Operations
  • Public URL Generation
  • Exception Handling
  • UUID-based File Naming
  • Beginner-Friendly DevOps Projects

Future Improvements

  • GUI Interface
  • ASP.NET Web Version
  • Multi-file Upload Support
  • Authentication Layer
  • Logging & Monitoring

Author

Giridhar Gopal

About

A collection of AWS S3 tools built with C# and .NET including file downloader, file listing, and image uploader with secure AWS SDK integration.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages