title: How can I programmatically check Amazon S3 permissions with boto?
body: <p>We have a bushy tree in a bucket on Amazon S3 with a large number of files. I just discovered that while some files have two permissions entries, as seen if one clicks on a file in the AWS Management Console, then properties -> permissions, one line being "everyone" and the other some specific user, other files just have one entry for that user. As the results, we're having issues downloading those files to Amazon EC2 instances using boto or curl. </p>
  
  <p>What I need to do is go over all files in the bucket and inspect them. I know how to get the full list of keys for a prefix. Can I use boto to extract permissions for a key, and is there a standard way of testing if those permissions are for everyone or someone specific, and what they are?</p>
  
  <p>Also, once I determine if a key has restrictive permissions, can I programmatically change them by adding read permissions to "everyone"?</p>
  
  <p>Thx</p>