title: aws s3Client PutObject Access Denied, but CyberDuck can PutObject Successfully
body: <p>Im facing a mystery on S3 bucket policy, and it is preventing my a Php S3Client from PutObject. The error im getting is:</p>
  
  <blockquote>
    <p>Error executing "PutObject" on "<a href="https://s3.amazonaws.com/reusable-system-dev/b1e42024e33d62b852d3c94c85f68c72.jpeg" rel="nofollow">https://s3.amazonaws.com/reusable-system-dev/b1e42024e33d62b852d3c94c85f68c72.jpeg</a>"; AWS HTTP error: Client error response [url] <a href="https://s3.amazonaws.com/reusable-system-dev/b1e42024e33d62b852d3c94c85f68c72.jpeg" rel="nofollow">https://s3.amazonaws.com/reusable-system-dev/b1e42024e33d62b852d3c94c85f68c72.jpeg</a> [status code] 403 [reason phrase] Forbidden AccessDenied (client): Access Denied</p>
  </blockquote>
  
  <p>But, with the same Access key and Secret key, i can PutObject using a CyberDuck client!  Is there any hidden S3 policy that could cause such a strange behavior?</p>