{"type":"rich","version":"1.0","provider_name":"phorkie","provider_url":"https:\/\/p.cweiske.de\/","title":"MinIO:  Insufficient permissions to access this file","author_name":"Christian Weiske","cache_age":86400,"width":900,"height":900,"html":"<!-- embedding all files of https:\/\/p.cweiske.de\/748 -->\n<link rel=\"stylesheet\" href=\"https:\/\/p.cweiske.de\/css\/embed.css\"\/>\n<div class=\"phork\" id=\"748\">\n    <div class=\"phork-file\">\n <div class=\"phork-content\">\n  \n<div class=\"document\">\n\n\n<p>Error with S3-compatible MinIO server:<\/p>\n<pre class=\"literal-block\">\n$ mc cp test-minio-main-readonly\/mybucket\/hello.txt .\nmc: &lt;ERROR&gt; Unable to validate source `test-minio-main-readonly\/mybucket\/hello.txt`.\n\n$ mc cat test-minio-main-readonly\/mybucket\/hello.txt .\nmc: &lt;ERROR&gt; Unable to read from `test-minio-main-readonly\/mybucket\/hello.txt`. Insufficient permissions to access this file `http:\/\/localhost:9001\/mybucket\/hello.txt`.\n<\/pre>\n<p>Solution: The policy allowed actions only for the bucket, but not for the files in the bucket.<\/p>\n<\/div>\n\n <\/div>\n <div class=\"phork-meta\">\n  <a href=\"https:\/\/p.cweiske.de\/748\/rev-raw\/d0cfc86bc001156572c978ff972046857e8f852d\/0-README.rst\" style=\"float: right\">view raw source<\/a>\n  <a href=\"https:\/\/p.cweiske.de\/748#0-README.rst\">0-README.rst<\/a>\n <\/div>\n<\/div>\n    <div class=\"phork-file\">\n <div class=\"phork-content\">\n  <style type=\"text\/css\">\/**\n * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann\n * (http:\/\/qbnz.com\/highlighter\/ and http:\/\/geshi.org\/)\n *\/\n.javascript .de1, .javascript .de2 {font: normal normal 1em\/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;}\n.javascript  {font-family:monospace;}\n.javascript .imp {font-weight: bold; color: red;}\n.javascript li, .javascript .li1 {color: #DDD;}\n.javascript .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}\n.javascript .kw1 {color: #000066; font-weight: bold;}\n.javascript .kw2 {color: #003366; font-weight: bold;}\n.javascript .kw3 {color: #000066;}\n.javascript .kw5 {color: #FF0000;}\n.javascript .co1 {color: #006600; font-style: italic;}\n.javascript .co2 {color: #009966; font-style: italic;}\n.javascript .coMULTI {color: #006600; font-style: italic;}\n.javascript .es0 {color: #000099; font-weight: bold;}\n.javascript .br0 {color: #009900;}\n.javascript .sy0 {color: #339933;}\n.javascript .st0 {color: #3366CC;}\n.javascript .nu0 {color: #CC0000;}\n.javascript .me1 {color: #660066;}\n.javascript span.xtra { display:block; }\n<\/style><div class=\"code\"><table class=\"javascript\"><tbody><tr class=\"li1\"><td class=\"ln\"><pre class=\"de1\">1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n15\n16\n17\n18\n19\n20\n21\n<\/pre><\/td><td class=\"de1\"><pre class=\"de1\"><span class=\"br0\">&#123;<\/span>\n&#160; &#160; <span class=\"st0\">&quot;Version&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;2012-10-17&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; <span class=\"st0\">&quot;Statement&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"br0\">&#91;<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#123;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Sid&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;readonly&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Effect&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Allow&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Action&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"br0\">&#91;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;s3:GetObject&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;s3:ListBucket&quot;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"br0\">&#93;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Resource&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;arn:aws:s3:::mybucket&quot;<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#123;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Sid&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;readonly&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Effect&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Allow&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Action&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;s3:HeadBucket&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Resource&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;arn:aws:s3:::mybucket&quot;<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#125;<\/span>\n&#160; &#160; <span class=\"br0\">&#93;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&#160;<\/pre><\/td><\/tr><\/tbody><\/table><\/div>\n <\/div>\n <div class=\"phork-meta\">\n  <a href=\"https:\/\/p.cweiske.de\/748\/rev-raw\/d0cfc86bc001156572c978ff972046857e8f852d\/1-broken-policy.json\" style=\"float: right\">view raw source<\/a>\n  <a href=\"https:\/\/p.cweiske.de\/748#1-broken-policy.json\">1-broken-policy.json<\/a>\n <\/div>\n<\/div>\n    <div class=\"phork-file\">\n <div class=\"phork-content\">\n  <style type=\"text\/css\">\/**\n * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2014 Benny Baumann\n * (http:\/\/qbnz.com\/highlighter\/ and http:\/\/geshi.org\/)\n *\/\n.javascript .de1, .javascript .de2 {font: normal normal 1em\/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;}\n.javascript  {font-family:monospace;}\n.javascript .imp {font-weight: bold; color: red;}\n.javascript li, .javascript .li1 {color: #DDD;}\n.javascript .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}\n.javascript .kw1 {color: #000066; font-weight: bold;}\n.javascript .kw2 {color: #003366; font-weight: bold;}\n.javascript .kw3 {color: #000066;}\n.javascript .kw5 {color: #FF0000;}\n.javascript .co1 {color: #006600; font-style: italic;}\n.javascript .co2 {color: #009966; font-style: italic;}\n.javascript .coMULTI {color: #006600; font-style: italic;}\n.javascript .es0 {color: #000099; font-weight: bold;}\n.javascript .br0 {color: #009900;}\n.javascript .sy0 {color: #339933;}\n.javascript .st0 {color: #3366CC;}\n.javascript .nu0 {color: #CC0000;}\n.javascript .me1 {color: #660066;}\n.javascript span.xtra { display:block; }\n<\/style><div class=\"code\"><table class=\"javascript\"><tbody><tr class=\"li1\"><td class=\"ln\"><pre class=\"de1\">1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n11\n12\n13\n14\n15\n16\n17\n18\n19\n20\n21\n22\n23\n24\n<\/pre><\/td><td class=\"de1\"><pre class=\"de1\"><span class=\"br0\">&#123;<\/span>\n&#160; &#160; <span class=\"st0\">&quot;Version&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;2012-10-17&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; <span class=\"st0\">&quot;Statement&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"br0\">&#91;<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#123;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Sid&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;readonly&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Effect&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Allow&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Action&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"br0\">&#91;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;s3:GetObject&quot;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"br0\">&#93;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Resource&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;arn:aws:s3:::mybucket\/*&quot;<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#123;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Sid&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;readonly&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Effect&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Allow&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Action&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"br0\">&#91;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;s3:HeadBucket&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;s3:ListBucket&quot;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;s3:GetBucketPolicy&quot;<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"br0\">&#93;<\/span><span class=\"sy0\">,<\/span>\n&#160; &#160; &#160; &#160; &#160; &#160; <span class=\"st0\">&quot;Resource&quot;<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;arn:aws:s3:::mybucket&quot;<\/span>\n&#160; &#160; &#160; &#160; <span class=\"br0\">&#125;<\/span>\n&#160; &#160; <span class=\"br0\">&#93;<\/span>\n<span class=\"br0\">&#125;<\/span>\n&#160;<\/pre><\/td><\/tr><\/tbody><\/table><\/div>\n <\/div>\n <div class=\"phork-meta\">\n  <a href=\"https:\/\/p.cweiske.de\/748\/rev-raw\/d0cfc86bc001156572c978ff972046857e8f852d\/2-correct-policy.json\" style=\"float: right\">view raw source<\/a>\n  <a href=\"https:\/\/p.cweiske.de\/748#2-correct-policy.json\">2-correct-policy.json<\/a>\n <\/div>\n<\/div>\n<\/div>\n"}
