Skip to content

View and manage S3 Objects among multiple buckets which can reside different accounts.

License

Notifications You must be signed in to change notification settings

froghollow/simple-s3-browser

Repository files navigation

SIMPLE S3 Browser for Jupyter

The standard Amazon S3 Console is oriented toward viewing and managing all buckets within a particular IAM Sign-in account. Granting users S3 Console access in multiple accounts is cumbersome, and fraught with security concerns, when all that users really need is access to a set of particular subfolders within particular buckets. This project provides a basic GUI that enables the user to view and manage S3 Objects among multiple buckets which can reside different accounts.

Usage

  1. Clone this repository into your Jupyter Notebook environment. This was built and tested with VS Code, but should work anywhere. You might need to 'pip install' some packages.

  2. Open s3_browser.ipynb and configure the Bucket Dictionary with the set of buckets and folders you need to work with.

  3. Select Source Objects

    • Select 'bucket/folder' from Source Bucket drop down list box
    • Optionally, select 'subfolder' from Source Folder drop down list box to filter results
    • Optionally, type substring in Source Filter to match any part of object names to filter results
    • Check Select All/None to select or deselect all the listed objects
    • Click an operation button to proceed
      • Copy selected objects from source to destination folder
      • Move selected objects from source to destination folder, then delete source objects
      • Rename one selected object within its current folder
      • Delete selected objects from source (WARNING: permanent, unless S3 versioning is configured)

  4. Specify Destination and Confirm Action

    • Review the Selected Objects
    • Select 'bucket/folder' from Destination Bucket drop down list box
    • Optionally, select 'subfolder' from Destination Folder drop down list box
    • Optionally for COPY or MOVE, modify destination folder in Input Textbox
      • NOTE: destination folder must end with '/'
    • For RENAME, modify Input Textbox to new object name
    • Click an operation button to proceed
      • Confirm to perform specified operation.
      • Cancel to return to 'Select Source Objects' without performing specified operation.

    Alt text)

Notes

  • SIMPLE S3 Browser for Jupyter is intended to support Dev and Test operations involving a limited set of files. (i.e., dozens, maybe hundreds, not thousands). If you find the GUI bogging down retreiving big object lists, specify a more limited subfolder in your Bucket Dictionary. Or, you can script your lotsa files use case with the provided python/batch_simple_2311.py module.

  • This project is not affiliated with S3 Browser - Amazon S3 Client for Windows. S3 Browser is a freeware Windows client that has many good features, but authentication is based on IAM User accounts, with authorization via S3 ACLs and Bucket Policies. Our goal to to instead utilize an 'Assume Role' approach to sharing resources.

  • See AWS Cross-Account Resource Sharing for further details on how to configure IAM Roles and Policies in order to make a Shared Account's resources accessible to a Trusted Account.

About

View and manage S3 Objects among multiple buckets which can reside different accounts.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published