title: AWS S3 Policy for authenticated users
body: <p>I'm trying to set a S3 Policy bucket but it does not work at all. I need to allow to upload files to anonymous users but only authenticated users can download those. I tried 2 thinks:</p>
  
  <pre><code>{
    "Id": "Policy1378380575437",
    "Statement": [
  {
    "Sid": "Stmt1378380436712",
    "Action": [
      "s3:PutObject"
    ],
    "Effect": "Allow",
    "Resource": "arn:aws:s3:::my_bucket/*",
    "Principal": {
      "AWS": [
        "*"
      ]
    }
  },
  {
    "Sid": "Stmt1378380568645",
    "Action": [
      "s3:GetObject"
    ],
    "Effect": "Allow",
    "Resource": "arn:aws:s3:::my_bucket/*",
    "Principal": {
      "AWS": [
        "arn:aws:iam::1111111111:root"
      ]
    }
   }
   ]
  }
  </code></pre>
  
  <p>But the problem is the GetObject is allowed by default, then it means anonymous users can download files. I tried to add a new Sid denying for * the GetObject but denies always override allows.</p>
  
  <p>I appreciate any suggestion.</p>
  
  <p>Thanks.</p>