[AWS SUPPORT] Support AWS Task Roles for S3 Access without Explicit AWS Keys
Description: The current implementation for creating an S3 client in the settings.py file explicitly requires AWS access keys, as seen in settings.py:
This approach is not optimal when running within AWS environments such as ECS tasks with IAM roles that have the necessary S3 permissions. In these scenarios, AWS automatically manages the credentials, eliminating the need to explicitly provide AWS access keys.
Proposed Solution: Remove the explicit requirement for AWS access keys in the S3 client creation logic. Allow the AWS SDK to automatically manage credentials when the application is running in an AWS environment with IAM roles.
These settings are optional - can we just not set them in whatever .env is in use in these environments, or is there more to it?