I'm using the Amazon C# SDK and trying to upload a file, but by default it has restricted permissions. I would like to make it publicly available, but I can't seem to find out how to do it as part of the upload.

My bucket is public, but when I upload a new file using the code below, the file I upload is not public.

Has anyone had to do this before?

public class S3Uploader
{
    private string awsAccessKeyId;
    private string awsSecretAccessKey;
    private string bucketName;
    private Amazon.S3.Transfer.TransferUtility transferUtility;

    public S3Uploader(string bucketName)
    {
        this.bucketName = bucketName;
        this.transferUtility = new Amazon.S3.Transfer.TransferUtility("XXXXXXXXXXXXXXXXXX", "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");

    }

    public void UploadFile(string filePath, string toPath)
    {
        AsyncCallback callback = new AsyncCallback(uploadComplete);
        transferUtility.BeginUpload(filePath, bucketName, toPath, callback, null);
    }

    private void uploadComplete(IAsyncResult result)
    { 
        var x = result;
    }
}
Edit
Report