Thanks for this update. This addresses a great security concern so that our buckets cannot be abused (especially filled) from outside of our apps.
I still have a remaining concern which is more about consistency. If you authorize users to upload for your app with a policy, they still can upload anything to their will without your app even knowing about it. Sure, the new policies can ensure that they won't be able to read what they upload if it never reaches your app but they still can upload huge amounts of data in your buckets without that data even being used or known of by the app.
I sure could write a backend scheduled task to clean up unknown files in our buckets.
But, what I would eventually like to see is a way to acknowledge that file handles we're received by the app. If, after a specified timeout no acknowledgement has been received from our app, then these files would be deemed dirty and you would then be able to clean up your servers and our buckets from these files.
Does my concern make any sense?
In any case, thanks again for this update. This remaining concern can be worked around and this update really mitigates the risk of someone wanting to abuse our buckets for malicious reasons.