यह कमांड s3aclp है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।
कार्यक्रम:
नाम
s3acl - AWS S3 बकेट और आइटम के ACL को प्रदर्शित या हेरफेर करें
SYNOPSIS
s3acl [विकल्प] [[बाल्टी|बाल्टी/कुंजी] ...]
विकल्प:
--एक्सेस-कुंजी एडब्ल्यूएस एक्सेस कुंजी आईडी
--secret-key AWS सीक्रेट एक्सेस की
--एसीएल को STDOUT पर आउटपुट करें
--xml पार्स किए गए फॉर्म के बजाय कच्चे XML फॉर्म में
--सेट एसीएल को संशोधित करें
--एसीएल से सभी अनुदान हटाएं
-- अनुदान जोड़ें, अनुदान,... एसीएल में अनुदान जोड़ें
--डेल अनुदान, अनुदान,... एसीएल से मिलान अनुदान हटाएं
--xml आइटम पर STDIN से XML ACL लागू करें
--acl-short cannedacl आइटम पर "डिब्बाबंद" ACL लागू करें
वातावरण:
AWS_ACCESS_KEY_ID
AWS_ACCESS_KEY_SECRET
विकल्प
--मदद एक संक्षिप्त सहायता संदेश प्रिंट करें और बाहर निकलें।
--पुरुष मैनुअल पेज प्रिंट करता है और बाहर निकलता है।
--शब्दशः
जो किया जा रहा है उसे वैसे ही आउटपुट करें जैसे किया जा रहा है।
--प्रवेश की चाबी और --गुप्त कुंजी
एडब्ल्यूएस खाते के लिए "एडब्ल्यूएस एक्सेस कुंजी पहचानकर्ता" निर्दिष्ट करें। --प्रवेश की चाबी विश्व का सबसे लोकप्रिय एंव
"प्रवेश कुंजी आईडी", और --गुप्त कुंजी "सीक्रेट एक्सेस की" है। य़े हैं
प्रभावी ढंग से "उपयोगकर्ता नाम" और "पासवर्ड" एडब्ल्यूएस खाते में, और रखा जाना चाहिए
गोपनीय।
एक्सेस कुंजियों को निर्दिष्ट किया जाना चाहिए, या तो इन कमांड लाइन मापदंडों के माध्यम से, या
के माध्यम से AWS_ACCESS_KEY_ID और AWS_ACCESS_KEY_SECRET पर्यावरण चर।
उन्हें कमांड लाइन पर निर्दिष्ट करना पर्यावरण चर को ओवरराइड करता है।
--सुरक्षित
HTTP के बजाय AWS सेवा के साथ संचार करने के लिए SSL/TLS HTTPS का उपयोग करता है।
--प्राप्त प्रत्येक निर्दिष्ट बकेट या आइटम के लिए ACL पुनर्प्राप्त करें और प्रदर्शित करें।
--xml जब के साथ प्रयोग किया जाता है --प्राप्त विकल्प, पार्स किए जाने के बजाय कच्चे XML को स्टडआउट करने के लिए आउटपुट देता है
प्रारूप। यह कच्चा XML "अमेज़ॅन S3 डेवलपर गाइड" में प्रलेखित है।
यदि एक से अधिक बकेट या आइटम निर्दिष्ट हैं, तो प्रत्येक के लिए XML ACL आउटपुट होगा,
एक साथ संयोजित. यह संभवतः बहुत उपयोगी नहीं है.
कच्चे XML आउटपुट को इनपुट के रूप में उपयोग किया जा सकता है --सेट विकल्प, जैसे:
s3acl --get --xml BucketA | s3acl --सेट --xml बकेटबी बकेटसी
एक से अधिक बकेट या आइटम निर्दिष्ट करते समय यह काम नहीं करता है --प्राप्त
विकल्प, क्योंकि एकाधिक XML ACL का संयोजन वैध XML ACL नहीं है।
--सेट एसीएल प्रदर्शित करने के बजाय, इसे संशोधित करें। ACL का उपयोग करके संशोधित किया जा सकता है
--स्पष्ट, --जोड़ें, तथा --डेल, या उपयोग करके --xml, या उपयोग करके --एसीएल-शॉर्ट.
--स्पष्ट एसीएल से सभी अनुदान हटा देता है। इसमें इसके मालिक की पहुंच शामिल है
बाल्टी या वस्तु. यह इससे पहले किया जाता है --जोड़ें or --डेल विकल्प लागू होते हैं, नहीं
इससे कोई फर्क नहीं पड़ता कि कमांड लाइन पर कौन से ऑर्डर विकल्प निर्दिष्ट हैं।
यह आमतौर पर इसके साथ होता है --जोड़ें कुछ अनुदानों को अभी वापस जोड़ने का विकल्प
खाली ए.सी.एल.
--डेल एसीएल से मिलते-जुलते अनुदान हटाएँ। यह इससे पहले किया जाता है --जोड़ें विकल्प है
लागू, इससे कोई फर्क नहीं पड़ता कि कमांड लाइन पर कौन से ऑर्डर विकल्प निर्दिष्ट हैं।
अनुदानों को पार्स किए गए रूप में निर्दिष्ट किया जाता है, और फिर संख्या के साथ अल्पविराम द्वारा एक साथ जोड़ दिया जाता है
खाली जगह
पार्स किए गए अनुदान प्रारूप का एक विस्तार है। यदि अनुदान प्राप्तकर्ता के रूप में निर्दिष्ट किया गया है
"कोई भी", तो यह एसीएल में किसी भी और सभी अनुदान प्राप्तकर्ताओं से मेल खाता है। यदि अनुमति है
"किसी भी" के रूप में निर्दिष्ट किया गया है, तो यह किसी भी अनुमति से मेल खाता है। इस प्रकार
s3acl --set --del कोई भी: पढ़ें mybucket
उन सभी अनुदानों को हटा देता है जो READ अनुमति देते हैं, और
s3acl --set --del someuserid:Any mybucket
उपयोगकर्ता someuserid को सभी अनुदान हटा देता है
s3acl --set --del कोई भी: कोई भी mybucket
वही काम करता है
s3acl --set --clear mybucket
S3 एपीआई के शब्दार्थ में एक सीमा के कारण, इसे हटाना संभव नहीं है
अनुदान प्राप्तकर्ता को ईमेल पते से, केवल विहित आईडी द्वारा।
--जोड़ें निर्दिष्ट अनुदान को एसीएल में जोड़ें। अनुदान पार्स किए गए फॉर्म में निर्दिष्ट हैं, और
फिर बिना किसी रिक्त स्थान के अल्पविराम द्वारा एक साथ जोड़ दिया जाता है।
एक ही अनुदान को एक बाल्टी या वस्तु में एक से अधिक बार जोड़ना संभव है। यह है
S3 सेवा का आश्चर्यजनक व्यवहार.
--xml जब used के साथ प्रयोग किया जाता है --सेट, और इसके बजाय <--clear>, <--del>, और का उपयोग करें --जोड़ें, पढ़ें
STDIN से कच्चा XML ACL, और फिर इसे प्रत्येक दिए गए बकेट या आइटम पर लागू करें। यह करेगा
प्रत्येक दिए गए बकेट या आइटम के लिए मौजूदा एसीएल को पूरी तरह से अधिलेखित करें।
--एसीएल-शॉर्ट
इसके बजाय <--clear>, <--del>, और का उपयोग करें --जोड़ें, या <--xml> का उपयोग करके, "डिब्बाबंद" लागू करें
प्रत्येक दिए गए बकेट या आइटम के लिए ACL''। यह मौजूदा को पूरी तरह से अधिलेखित कर देगा
प्रत्येक दी गई बाल्टी या वस्तु के लिए एसीएल।
निम्नलिखित डिब्बाबंद ACL को वर्तमान में S3 द्वारा परिभाषित किया गया है:
निजी स्वामी को "FULL_CONTROL" मिलता है। किसी अन्य के पास कोई पहुंच अधिकार नहीं है. यह है
नव निर्मित बकेट और आइटम के लिए डिफ़ॉल्ट।
पब्लिक-रीड
मालिक को "FULL_CONTROL" मिलता है। अनाम प्रिंसिपल को "पढ़ें" दिया जाता है
उपयोग.
सार्वजनिक-पढ़ें-लिखें
स्वामी को "FULL_CONTROL" मिलता है।
अनाम प्रिंसिपल को "पढ़ें" और "लिखें" पहुंच प्रदान की जाती है। यह है एक
यदि आप किसी अज्ञात उपयोगकर्ता के लिए चाहते हैं तो बकेट पर लागू करने के लिए उपयोगी नीति
वस्तुओं को बाल्टी में डालना।
प्रमाणित-पढ़ें
मालिक को "FULL_CONTROL" मिलता है। पंजीकृत के रूप में प्रमाणित कोई भी प्रिंसिपल
Amazon S3 उपयोगकर्ता को "रीड" एक्सेस दी गई है।
बाल्टी or बाल्टी/कुंजी
एक या अधिक बकेट नाम या बकेट और कुंजी नाम, एक आइटम निर्दिष्ट करते हैं। ज्यादा से ज्यादा
संभव कार्रवाई की जाएगी.
यदि केवल एक बकेट नाम दिया गया है, तो उस बकेट के लिए ACL पुनर्प्राप्त या संशोधित किया जाता है।
यदि एक बकेट नाम और एक स्लैश द्वारा अलग की गई कुंजी दी गई है, तो उस कुंजी के लिए एसीएल
उस बकेट में पुनर्प्राप्त या संशोधित किया जाता है।
यदि बकेट नाम एक या अधिक डैश से शुरू होता है, तो इसे गलत समझा जा सकता है a
कमांड लाइन विकल्प। यदि ऐसा है, तो कमांड लाइन विकल्पों को से अलग करें
दो डैश के साथ बाल्टी या बाल्टी/कुंजी नाम, जैसे:
s3acl--प्राप्त करें--बकेटनाम/कुंजीनाम
वातावरण चर
AWS_ACCESS_KEY_ID और AWS_ACCESS_KEY_SECRET
एडब्ल्यूएस खाते के लिए "एडब्ल्यूएस एक्सेस कुंजी पहचानकर्ता" निर्दिष्ट करें। AWS_ACCESS_KEY_ID
"एक्सेस कुंजी आईडी" शामिल है, और AWS_ACCESS_KEY_SECRET "गुप्त" शामिल है
एक्सेस कुंजी"। ये प्रभावी रूप से एडब्ल्यूएस के लिए "उपयोगकर्ता नाम" और "पासवर्ड" हैं
सेवा, और गोपनीय रखा जाना चाहिए।
एक्सेस कुंजियों को निर्दिष्ट किया जाना चाहिए, या तो इन पर्यावरण चर के माध्यम से, या के माध्यम से
la --प्रवेश की चाबी और --गुप्त कुंजी कमांड लाइन पैरामीटर।
यदि कमांड लाइन पैरामीटर सेट हैं, तो वे इन पर्यावरण चर को ओवरराइड करते हैं।
विन्यास फ़ाइल
कॉन्फ़िगरेशन विकल्प फ़ाइल से पढ़े जाएंगे "~/.s3-उपकरण"अगर यह मौजूद है। The
प्रारूप प्रति पंक्ति एक विकल्प के साथ कमांड लाइन विकल्प के समान है। उदाहरण के लिए,
फ़ाइल में हो सकता है:
--प्रवेश की चाबी
--गुप्त कुंजी
--सुरक्षित
यह उदाहरण कॉन्फ़िगरेशन फ़ाइल AWS एक्सेस कुंजियों को निर्दिष्ट करेगी और यह कि एक सुरक्षित
HTTPS का उपयोग करने वाले कनेक्शन का उपयोग सभी संचारों के लिए किया जाना चाहिए।
वर्णन
बकेट और बकेट में आइटम की एक्सेस कंट्रोल लिस्ट (एसीएल) को पुनः प्राप्त और आउटपुट करता है
अमेज़न सिंपल स्टोरेज सर्विस (S3)।
प्रधानाध्यापकों
(निम्नलिखित में से अधिकांश पाठ "अमेज़ॅन S3 डेवलपर गाइड (एपीआई संस्करण) से लिया गया है
2006-03-01)"।)
प्रत्येक बकेट और आइटम में एक एक्सेस कंट्रोल लिस्ट (एसीएल) होती है। जब कोई अनुरोध किया जाता है, S3
अनुरोध करने वाले प्रिंसिपल को निर्धारित करता है, और फिर एक्सेस कंट्रोल सूची की जाँच करता है
देखें कि क्या वह प्रिंसिपल अनुरोध करने के लिए अधिकृत है। यदि ACL में कोई प्रविष्टि है
उस प्रिंसिपल को यह अनुरोध करने के लिए अधिकृत करते हुए, अनुरोध को आगे बढ़ने की अनुमति दी जाती है,
अन्यथा एक त्रुटि वापस आ जाती है.
प्रिंसिपल AWS S3 खाते वाला कोई व्यक्ति हो सकता है जिसने लॉग इन किया हो, या "प्रमाणित" किया हो।
प्रिंसिपल बाल्टी या वस्तु का निर्माता और मालिक हो सकता है। या प्रिंसिपल
इंटरनेट पर कोई गुमनाम वेब ब्राउज़र हो सकता है।
एसीएल is अनुक्रम of अनुदान। A अनुदान is 1 अनुदेयी और 1 अनुमति।
अभिगम नियंत्रण सूची अनुदानों का एक क्रम है। इसमें 100 अनुदान तक हो सकते हैं। मदद
एक अनुदानग्राही से बना है, जो उस मूलधन का विवरण है जिसे अनुमति दी जाएगी
पहुंच, और एक अनुमति, जो उस प्रिंसिपल को क्या करने की अनुमति है उसका विवरण है
उस बाल्टी या वस्तु के साथ.
उपयोगकर्ता अनुदेयी
उपयोगकर्ता अनुदान प्राप्तकर्ता को Amazon.com ग्राहक के रूप में पंजीकृत होना चाहिए, लेकिन ऐसा होना ज़रूरी नहीं है
AWS ग्राहक के रूप में पंजीकृत।
जब एसीएल पढ़ा जाता है, तो उपयोगकर्ता अनुदान प्राप्तकर्ता को एक विहित प्रारूप में प्रदर्शित किया जाएगा
इसमें 64 हेक्स अक्षर हैं। अपवाद यह है कि यदि अनुदान प्राप्तकर्ता स्वामी है। वीरांगना
अभी भी अनुदान प्राप्तकर्ता को विहित रूप में संग्रहीत और लौटाता है, लेकिन यह उपकरण इसे इस रूप में प्रदर्शित करता है
"मालिक"।
समूह अनुदेयी
उपलब्ध एकमात्र समूह वे हैं जो S3 द्वारा पूर्व-परिभाषित हैं। S3 की वर्तमान रिलीज़ में, आप
अपना स्वयं का समूह नहीं बना सकते. वर्तमान में दो पूर्व-परिभाषित समूह हैं।
पहले को इस टूल द्वारा "WORLD" स्ट्रिंग द्वारा दर्शाया गया है। सभी प्राचार्य, चाहे वे
गुमनाम या प्रमाणित हैं, इस समूह का हिस्सा माने जाते हैं।
दूसरे को इस टूल द्वारा "USERS" स्ट्रिंग द्वारा दर्शाया गया है। हर गैर-गुमनाम
प्रिंसिपल को समूह का हिस्सा माना जाता है। ध्यान दें कि इसके आधार पर अनुमति दी गई है
अनुदान अन्य अभिगम नियंत्रण विचारों पर हावी नहीं होता है। उदाहरण के लिए, यदि कोई उपयोगकर्ता है
AWS के साथ पंजीकृत, वे इस समूह का हिस्सा हो सकते हैं, लेकिन यदि उन्होंने सदस्यता नहीं ली है
S3, उन्हें अभी भी पहुंच प्रदान नहीं की जाएगी।
"ANY" स्ट्रिंग के साथ एक विशेष छद्म समूह भी है। इसका प्रयोग किया जाता है --डेल
हटाने के लिए चयन करने के लिए ACL आइटम से मिलान करने का विकल्प।
यदि अमेज़ॅन इस टूल के अपडेट होने से पहले किसी अतिरिक्त समूह को परिभाषित करने के लिए S3 को अपडेट करता है, तो वे
कोण कोष्ठक से घिरे यूआरआई के रूप में दर्शाया जाएगा।
मालिक
S3 में प्रत्येक बकेट और आइटम के साथ एक स्वामी विशेषता जुड़ी होती है। मालिक उपयोगकर्ता
जिससे बाल्टी या वस्तु बनी। बाल्टी के मालिक को बदलने का एकमात्र तरीका हटाना है
बाल्टी और इसे एक अलग उपयोगकर्ता पहचान के तहत फिर से बनाएं। बदलने का एकमात्र तरीका
किसी आइटम के स्वामी को किसी भिन्न पहचान का उपयोग करके आइटम को अधिलेखित करना होगा।
किसी बाल्टी या वस्तु का मालिक उस बाल्टी की पहुंच नियंत्रण नीति के अधीन है
दो उल्लेखनीय अपवादों के साथ, हर किसी की तरह आइटम: हमेशा एक संसाधन का मालिक
उस संसाधन के ACL को पढ़ने और लिखने की क्षमता है, चाहे वह किसी भी प्रकार से संबद्ध क्यों न हो
एसीएल का कहना है. उदाहरण के लिए, किसी वस्तु के स्वामी के रूप में, आप स्वयं को उससे हटा सकते हैं
संबद्ध पहुंच नियंत्रण सूची, और पाएं कि अब आप आइटम का डेटा नहीं पढ़ सकते हैं और
मेटाडेटा. हालाँकि, मालिक होने के नाते, आपके पास हमेशा पुनः अनुदान देने का अधिकार है
अपने आप को इसकी अनुमति दें। यह नीति उस स्थिति को रोकती है जहां कोई वस्तु बन जाती है
"फंसे हुए", कोई भी इसे कभी भी संशोधित करने या यहां तक कि हटाने में सक्षम नहीं है।
अनुमतियाँ
अनुदान में अनुमति संबंधित को दी जाने वाली पहुंच के प्रकार का वर्णन करती है
अनुदान प्राप्तकर्ता निम्नलिखित अनुमतियाँ समर्थित हैं:
पढ़ें जब किसी बाल्टी पर लागू किया जाता है, तो यह बाल्टी को सूचीबद्ध करने की अनुमति देता है। जब लागू किया गया
किसी आइटम के लिए, यह आइटम डेटा और/या मेटाडेटा को पढ़ने की अनुमति देता है।
WRITE जब किसी बकेट पर लागू किया जाता है, तो यह बनाने, अधिलेखित करने और हटाने की अनुमति देता है
बाल्टी में कोई भी वस्तु। यह अनुमति आइटमों के लिए समर्थित नहीं है (यह आरक्षित है
भविष्य में उपयोग के लिए)।
पढ़ें_एसीपी
के लिए एक्सेस कंट्रोल पॉलिसी (एसीएल और मालिक) को पढ़ने की अनुमति देता है
लागू बाल्टी या वस्तु। बाल्टी या वस्तु के मालिक के पास यह हमेशा रहता है
परोक्ष रूप से अनुमति.
WRITE_ACP
लागू बकेट या आइटम के लिए एसीपी को अधिलेखित करने की अनुमति देता है।
किसी बाल्टी या वस्तु के मालिक के पास हमेशा यह अनुमति निहित होती है। ध्यान दें कि
यह अनुमति देना FULL_CONTROL देने के बराबर है, क्योंकि अनुदान
प्राप्तकर्ता अब एसीपी में जो चाहे बदलाव कर सकता है!
पूर्ण नियंत्रण
यह अनुमति READ, WRITE, READ_ACP और के संयोजन के लिए अल्पकालिक है
WRITE_ACP अनुमतियाँ। यह अतिरिक्त अधिकार प्रदान नहीं करता है, और केवल प्रदान किया जाता है
सुविधा के लिए। विश्व को यह अनुमति देना शायद नासमझी है।
कोई भी यह वास्तव में कोई अनुमति नहीं है, लेकिन इसका उपयोग किया जाता है --डेल विकल्प। यह किसी से भी मेल खाता है
हटाने के लिए अनुदान का चयन करने की अनुमति।
चूक एसीएल
यदि बकेट बनाते समय या आइटम लिखते समय कोई एसीएल प्रदान नहीं किया जाता है तो यह डिफ़ॉल्ट है
एसीएल बनाया गया है. नए संसाधनों के लिए डिफ़ॉल्ट ACL में एक एकल अनुदान शामिल होता है जो देता है
संसाधन का मालिक (अर्थात् बकेट बनाने का अनुरोध करने वाला प्रिंसिपल या)।
आइटम लिखने के लिए) FULL_CONTROL अनुमति। ध्यान दें कि यदि आप किसी मौजूदा आइटम को अधिलेखित करते हैं,
मौजूदा आइटम के लिए ACL को हमेशा ओवरराइट किया जाता है, और वापस डिफॉल्ट किया जाता है
स्वामी: यदि कोई स्पष्ट एसीएल प्रदान नहीं किया गया है तो FULL_CONTROL।
कच्चा एक्सएमएल एसीएल प्रारूप
XML ACL प्रारूप "अमेज़ॅन S3 डेवलपर गाइड" में प्रलेखित है।
पार्स किया गया एसीएल प्रारूप
यह उपकरण कच्चे XML ACL प्रारूप को अधिक पठनीय रूप में पार्स करता है।
एक पार्स किए गए ACL में कई लाइनें होती हैं। टिप्पणियाँ वे पंक्तियाँ हैं जो हैश से शुरू होती हैं
चरित्र। जो पंक्तियाँ टिप्पणियाँ नहीं हैं वे अनुदान हैं।
बकेट के लिए, टिप्पणियाँ बकेट का नाम और अमेज़ॅन कैनोनिकल उपयोगकर्ता स्ट्रिंग देती हैं
मालिक।
आइटम के लिए, टिप्पणियाँ बकेट नाम, आइटम कुंजी और अमेज़ॅन कैनोनिकल उपयोगकर्ता देती हैं
मालिक के लिए स्ट्रिंग.
अनुदान अनुदान प्राप्तकर्ता स्ट्रिंग और एक अनुमति स्ट्रिंग है, जिसे कोलन वर्ण से अलग किया जाता है। ए
अनुदान प्राप्तकर्ता "मालिक", "विश्व", या "उपयोगकर्ता" स्ट्रिंग में से एक हो सकता है, या कोण में लिपटा हुआ यूआरआई हो सकता है
कोष्ठक, या अमेज़ॅन उपयोगकर्ता का ईमेल पता, या अमेज़ॅन कैनोनिकल उपयोगकर्ता स्ट्रिंग, जो
64 हेक्स अक्षर है. अनुमति स्ट्रिंग "READ", "WRITE", "READ_ACP" में से एक है।
"WRITE_ACP", या "FULL_CONTROL"।
$ ./s3getacl उदाहरण
# बाल्टी: उदाहरण
# owner: 5a1568e09392dad4b4ceb54f29f0a64d651a531350d6f720fbd2367eed995f08
स्वामी:पूर्ण_नियंत्रण
a00490decea9d0ad76e5ef8b450b3efa63861adccfb9197cfb42f837eb222df2:WRITE
उपयोगकर्ता: पढ़ें
विश्व: पढ़ें
$ ./s3getacl उदाहरण/thingee
# बाल्टी: उदाहरण
# आइटम: चीज़
# owner: 5a1568e09392dad4b4ceb54f29f0a64d651a531350d6f720fbd2367eed995f08
स्वामी:पूर्ण_नियंत्रण
$_
onworks.net सेवाओं का उपयोग करके s3aclp का ऑनलाइन उपयोग करें