title: Google Cloud Storage - insufficient permission
body: <p>The issue seems similar to another post, but It's different for me. Because I check the <code>testIamPermission</code>, and the returns showed that I got all permission I needed and still receive <strong>insufficient permission</strong>.</p>
  
  <p>This is what I received:</p>
  
  <pre><code>{'storage.buckets.get' : true}
  {'storage.buckets.getIamPolicy' : true}
  {'storage.objects.create' : true}
  {'storage.objects.delete' : true}
  {'storage.objects.get' : true}
  {'storage.objects.getIamPolicy' : true}
  {'storage.objects.list' : true}
  {'storage.objects.setIamPolicy' : true}
  {'storage.objects.update' : true}
  </code></pre>
  
  <p>The code I used to test:</p>
  
  <pre><code>googleBucket.iam.testPermissions([testPermissions], function(err, permissions) {
    if(!err)
      console.log(permissions);
    })
  </code></pre>
  
  <p>Permission I missed:</p>
  
  <pre><code>'storage.buckets.create',
  'storage.buckets.delete',
  'storage.buckets.list',
  'storage.buckets.setIamPolicy',
  'storage.buckets.update',
  </code></pre>
  
  <p>It's really confused that I got all permission on create objects, but still throw an <strong>insufficient permission</strong>. What I used for api is just uploading a file on bucket. Is there any permission I missed? (Server is located at Google Compute Engine, on the same project of Google Cloud Storage)</p>