<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<oembed><type>rich</type><version>1.0</version><provider_name>phorkie</provider_name><provider_url>https://p.cweiske.de/</provider_url><title>MinIO:  Insufficient permissions to access this file</title><author_name>Christian Weiske</author_name><cache_age>86400</cache_age><width>900</width><height>900</height><html>&lt;!-- embedding all files of https://p.cweiske.de/748 --&gt;
&lt;link rel="stylesheet" href="https://p.cweiske.de/css/embed.css"/&gt;
&lt;div class="phork" id="748"&gt;
    &lt;div class="phork-file"&gt;
 &lt;div class="phork-content"&gt;
  
&lt;div class="document"&gt;


&lt;p&gt;Error with S3-compatible MinIO server:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
$ mc cp test-minio-main-readonly/mybucket/hello.txt .
mc: &amp;lt;ERROR&amp;gt; Unable to validate source `test-minio-main-readonly/mybucket/hello.txt`.

$ mc cat test-minio-main-readonly/mybucket/hello.txt .
mc: &amp;lt;ERROR&amp;gt; Unable to read from `test-minio-main-readonly/mybucket/hello.txt`. Insufficient permissions to access this file `http://localhost:9001/mybucket/hello.txt`.
&lt;/pre&gt;
&lt;p&gt;Solution: The policy allowed actions only for the bucket, but not for the files in the bucket.&lt;/p&gt;
&lt;/div&gt;

 &lt;/div&gt;
 &lt;div class="phork-meta"&gt;
  &lt;a href="https://p.cweiske.de/748/rev-raw/d0cfc86bc001156572c978ff972046857e8f852d/0-README.rst" style="float: right"&gt;view raw source&lt;/a&gt;
  &lt;a href="https://p.cweiske.de/748#0-README.rst"&gt;0-README.rst&lt;/a&gt;
 &lt;/div&gt;
&lt;/div&gt;
    &lt;div class="phork-file"&gt;
 &lt;div class="phork-content"&gt;
  &lt;style type="text/css"&gt;/**
 * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann
 * (http://qbnz.com/highlighter/ and http://geshi.org/)
 */
.javascript .de1, .javascript .de2 {font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;}
.javascript  {font-family:monospace;}
.javascript .imp {font-weight: bold; color: red;}
.javascript li, .javascript .li1 {color: #DDD;}
.javascript .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}
.javascript .kw1 {color: #000066; font-weight: bold;}
.javascript .kw2 {color: #003366; font-weight: bold;}
.javascript .kw3 {color: #000066;}
.javascript .kw5 {color: #FF0000;}
.javascript .co1 {color: #006600; font-style: italic;}
.javascript .co2 {color: #009966; font-style: italic;}
.javascript .coMULTI {color: #006600; font-style: italic;}
.javascript .es0 {color: #000099; font-weight: bold;}
.javascript .br0 {color: #009900;}
.javascript .sy0 {color: #339933;}
.javascript .st0 {color: #3366CC;}
.javascript .nu0 {color: #CC0000;}
.javascript .me1 {color: #660066;}
.javascript span.xtra { display:block; }
&lt;/style&gt;&lt;div class="code"&gt;&lt;table class="javascript"&gt;&lt;tbody&gt;&lt;tr class="li1"&gt;&lt;td class="ln"&gt;&lt;pre class="de1"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
&lt;/pre&gt;&lt;/td&gt;&lt;td class="de1"&gt;&lt;pre class="de1"&gt;&lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;
&amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Version&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;2012-10-17&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Statement&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Sid&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;readonly&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Effect&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;Allow&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Action&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;s3:GetObject&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;s3:ListBucket&amp;quot;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#93;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Resource&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;arn:aws:s3:::mybucket&amp;quot;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Sid&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;readonly&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Effect&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;Allow&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Action&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;s3:HeadBucket&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Resource&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;arn:aws:s3:::mybucket&amp;quot;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;
&amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#93;&lt;/span&gt;
&lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;
&amp;#160;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="phork-meta"&gt;
  &lt;a href="https://p.cweiske.de/748/rev-raw/d0cfc86bc001156572c978ff972046857e8f852d/1-broken-policy.json" style="float: right"&gt;view raw source&lt;/a&gt;
  &lt;a href="https://p.cweiske.de/748#1-broken-policy.json"&gt;1-broken-policy.json&lt;/a&gt;
 &lt;/div&gt;
&lt;/div&gt;
    &lt;div class="phork-file"&gt;
 &lt;div class="phork-content"&gt;
  &lt;style type="text/css"&gt;/**
 * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann
 * (http://qbnz.com/highlighter/ and http://geshi.org/)
 */
.javascript .de1, .javascript .de2 {font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;}
.javascript  {font-family:monospace;}
.javascript .imp {font-weight: bold; color: red;}
.javascript li, .javascript .li1 {color: #DDD;}
.javascript .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}
.javascript .kw1 {color: #000066; font-weight: bold;}
.javascript .kw2 {color: #003366; font-weight: bold;}
.javascript .kw3 {color: #000066;}
.javascript .kw5 {color: #FF0000;}
.javascript .co1 {color: #006600; font-style: italic;}
.javascript .co2 {color: #009966; font-style: italic;}
.javascript .coMULTI {color: #006600; font-style: italic;}
.javascript .es0 {color: #000099; font-weight: bold;}
.javascript .br0 {color: #009900;}
.javascript .sy0 {color: #339933;}
.javascript .st0 {color: #3366CC;}
.javascript .nu0 {color: #CC0000;}
.javascript .me1 {color: #660066;}
.javascript span.xtra { display:block; }
&lt;/style&gt;&lt;div class="code"&gt;&lt;table class="javascript"&gt;&lt;tbody&gt;&lt;tr class="li1"&gt;&lt;td class="ln"&gt;&lt;pre class="de1"&gt;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
&lt;/pre&gt;&lt;/td&gt;&lt;td class="de1"&gt;&lt;pre class="de1"&gt;&lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;
&amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Version&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;2012-10-17&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Statement&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Sid&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;readonly&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Effect&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;Allow&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Action&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;s3:GetObject&amp;quot;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#93;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Resource&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;arn:aws:s3:::mybucket/*&amp;quot;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#123;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Sid&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;readonly&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Effect&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;Allow&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Action&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="br0"&gt;&amp;#91;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;s3:HeadBucket&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;s3:ListBucket&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;s3:GetBucketPolicy&amp;quot;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#93;&lt;/span&gt;&lt;span class="sy0"&gt;,&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="st0"&gt;&amp;quot;Resource&amp;quot;&lt;/span&gt;&lt;span class="sy0"&gt;:&lt;/span&gt; &lt;span class="st0"&gt;&amp;quot;arn:aws:s3:::mybucket&amp;quot;&lt;/span&gt;
&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;
&amp;#160; &amp;#160; &lt;span class="br0"&gt;&amp;#93;&lt;/span&gt;
&lt;span class="br0"&gt;&amp;#125;&lt;/span&gt;
&amp;#160;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="phork-meta"&gt;
  &lt;a href="https://p.cweiske.de/748/rev-raw/d0cfc86bc001156572c978ff972046857e8f852d/2-correct-policy.json" style="float: right"&gt;view raw source&lt;/a&gt;
  &lt;a href="https://p.cweiske.de/748#2-correct-policy.json"&gt;2-correct-policy.json&lt;/a&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</html></oembed>
