3 को भाग 1
2011 मा, AmazonA CloudFront को लागि AWS पहिचान र पहुँच प्रबंधन (IAM) समर्थन को उपलब्धता को घोषणा गर्यो। आईएएम 2010 मा सुरु भएको थियो र एस 3 को समर्थन पनि शामिल भएको थियो। AWS पहिचान र पहुँच व्यवस्थापन (IAM) ले तपाईंलाई AWS खाता भित्र बहु प्रयोगकर्ताहरू सक्षम पार्दछ। यदि तपाईंले अमेजन वेब सेवाहरू प्रयोग गर्नुभयो भने (AWS), तपाईं सजग हुनुहुन्छ कि AWS मा सामग्री व्यवस्थापन गर्न एक मात्र तरिका तपाईंको प्रयोगकर्ता नाम र पासवर्ड वा पहुँच कुञ्जीहरू आउट गर्ने समावेश गर्दछ।
यो हाम्रो लागि एक वास्तविक सुरक्षा समस्या हो। IAM ले पासवर्डहरू र पहुँच कुञ्जीहरू साझा गर्ने आवश्यकतालाई मेटाउँछ।
लगातार हाम्रो मुख्य AWS पासवर्ड परिवर्तन वा नयाँ कुञ्जीहरू सिर्जना गर्दा एक गन्दा समाधान हो जब स्टाफ सदस्यले हाम्रो टोलीलाई छोड्नेछ। AWS पहिचान र पहुँच व्यवस्थापन (IAM) एक राम्रो सुरूवात थियो कि व्यक्तिगत प्रयोगकर्ताले व्यक्तिगत कुञ्जीहरूसँग खाता अनुमति दिन्छ। तर, हामी एक S3 / CloudFront प्रयोगकर्ता हो त्यसैले हामी क्लाउड फ्र्रेसको लागि IAM मा थप्नको लागी हेरिरहेको छु जुन अन्त भयो।
मैले यस सेवामा दस्तावेज बिट बिग्रिएको पार्यो। त्यहाँ केहि तेस्रो पार्टी उत्पादनहरू छन् जुन पहिचान र पहुँच व्यवस्थापन (आईएएम) को लागि समर्थनको दायरा प्रदान गर्दछ। तर विकासकर्ताहरू सामान्यतया थिच्छात्मक छन् त्यसैले मैले हाम्रो अमेजन एस 3 सेवाको साथ IAM व्यवस्थापन गर्ने नि: शुल्क समाधान खोजे।
यस आलेखले IAM लाई समर्थन गर्दछ र S3 पहुँचसँग समूह / प्रयोगकर्ता सेटअप गर्ने कमांड रेखा इन्टरफेस स्थापित गर्ने प्रक्रियामार्फत चलाउँछ। तपाईंले पहिचान र पहुँच व्यवस्थापन (IAM) कन्फिगर गर्न सुरु गर्नु अघि तपाईलाई Amazon AWS S3 खाता सेटअप हुनु आवश्यक छ।
मेरो लेख, अमेज़न सरल भण्डारण सेवा (S3) को प्रयोग गरेर तपाईंलाई AWS S3 खाता स्थापित गर्ने प्रक्रिया मार्फत हिड्न सक्नेछ।
यहाँ IAM मा प्रयोगकर्तालाई सेट अप र लागू गर्नका लागी चरणहरू छन्। यो विन्डोजको लागी लेखिएको छ तर तपाईं लिनक्स, युनिक्स र / वा म्याक OSX मा प्रयोगको लागि tweak गर्न सक्नुहुन्छ।
- आदेश रेखा इन्टरफेस (CLI) स्थापना र कन्फिगर गर्नुहोस्
- एक समूह बनाउनुहोस्
- समूह पहुँच S3 बाल्टी र CloudFront मा दिनुहोस्
- प्रयोगकर्ता सिर्जना गर्नुहोस् र समूहमा थप्नुहोस्
- लगइन प्रोफाइल सिर्जना गर्नुहोस् र कुञ्जी सिर्जना गर्नुहोस्
- परीक्षण पहुँच
आदेश रेखा इन्टरफेस (CLI) स्थापना र कन्फिगर गर्नुहोस्
IAM कमाण्ड लाइन टूलकिट एक जावा प्रोग्राम अमेजन को AWS विकासकर्ता उपकरणहरूमा उपलब्ध छ। उपकरणले तपाईंलाई शेल उपयोगिताबाट IAM API आदेशहरू चलाउन अनुमति दिन्छ (DOS को लागि विन्डोज)।
- तपाई जाभा 1.6 वा माथि बढिरहनु आवश्यक छ। तपाईं Java.com बाट नवीनतम संस्करण डाउनलोड गर्न सक्नुहुन्छ। तपाईंको विन्डोज प्रणालीमा कुन संस्करण स्थापना गरिएको छ हेर्न, आदेश प्रोम्प्ट खोल्नुहोस् र java-version मा टाइप गर्नुहोस्। यो मानिन्छ कि java.exe तपाईंको PATH मा छ।
- IAM CLI टूलकिट डाउनलोड गर्नुहोस् र तपाईंको स्थानीय ड्राइभमा कहीं अनबज गर्नुहोस्।
- त्यहाँ 2 फाइलहरू CLI टूलकिटको रूटमा छन् जुन तपाईंले अद्यावधिक गर्न आवश्यक छ।
- aws-credential.template: यो फाइलले तपाईको AWS प्रमाणपत्रहरू राख्छ। आफ्नो AWSAccessKeyId र तपाईंको AWSSecretKey थप्नुहोस्, फाइल सुरक्षित र बन्द गर्नुहोस्।
- ग्राहक-config.template : यदि तपाइँ प्रोक्सी सर्भरको आवश्यकता पर्दछ भने तपाईलाई मात्र यो फाइल अद्यावधिक गर्न आवश्यक छ। # लक्षणहरू हटाउनुहोस् र क्लाइन्ट प्रोक्सी होस्ट, क्लाइन्ट प्रोक्सीक्सी, क्लाइन्ट प्रोक्सीको प्रयोगकर्ता नाम र क्लाइन्ट प्रोक्सीको पासवर्ड अद्यावधिक गर्नुहोस्। फाइल बचत गर्नुहोस् र बन्द गर्नुहोस्।
- अर्को चरणमा पर्यावरण चरहरू थप्न समावेश छ। नियन्त्रण कक्षमा जानुहोस् | प्रणाली गुणहरू | उन्नत प्रणाली सेटिंग्स | वातावरण चर। निम्न चरहरू थप्नुहोस्:
- AWS_IAM_HOME : यस चरमलाई डाइरेक्टरीमा सेट गर्नुहोस् जहाँ तपाई CLI टूलकिट अनजाल गर्नुभयो। यदि तपाइँ विण्डोज सञ्चालन गर्दै हुनुहुन्छ र यसलाई तपाईँको सी ड्राइभको रूटमा अनजीप गर्नुभयो, चर C: \ IAMCli-1.2.0 हुनेछ।
- JAVA_HOME : यो डाइरेक्टरीमा जाभा स्थापना भएको डाइरेक्टरी सेट गर्नुहोस्। यो java.exe फाइलको स्थान हुनेछ। एक सामान्य Windows 7 जावा स्थापनामा, यो केही C: \ Program Files (x86) \ Java \ jre6 जस्तै हुनेछ।
- AWS_CREDENTIAL_FILE : यस चर लाई सेट गर्नुहोस् र aws-credential.template को नाम फाइल गर्नुहोस् जुन तपाईंले माथि अद्यावधिक गर्नुभयो। यदि तपाइँ विन्डोज चलिरहनु भएको छ र यसलाई तपाईंको सी ड्राइवको रूटमा अनब्याड गर्नुभयो, चर C: \ IAMCli-1.2.0 \ aws-credential.template हुनेछ।
- CLIENT_CONFIG_FILE : यदि तपाइँ प्रोक्सी सर्भरको आवश्यकता पर्दछ भने मात्र तपाईले यो वातावरण चर थप्न आवश्यक छ। यदि तपाइँ Windows चलाइरहनुभएको छ र यसलाई तपाईंको सी ड्राइभको रूटमा अनजाइयो भने, चर C: \ IAMCli-1.2.0 \ client-config.template हुनेछ। यो चर नबनाउनुहोस् जब सम्म तपाईंलाई यो आवश्यक पर्दैन।
- कमान प्रोम्टमा जाएर आईम-प्रयोगकर्तासूचीबypath प्रवेश गरेर स्थापनाको परीक्षण गर्नुहोस्। जबसम्म तपाईंले त्रुटि प्राप्त गर्नुहुन्न, तपाई जानुहुन्छ राम्रो हुनुपर्दछ।
IAM आदेशहरू सबै कमांड प्रोम्प्टबाट चल्न सकिन्छ। सबै आदेशहरू "आईम-" सँग सुरु हुन्छ।
एक समूह बनाउनुहोस्
प्रत्येक AWS खाताको लागि अधिकतम 100 समूहहरू सिर्जना गर्न सकिन्छ। जब तपाइँ प्रयोगकर्ता स्तरमा IAM मा अनुमतिहरू सेट गर्न सक्नुहुनेछ, समूहका सबै भन्दा राम्रो अभ्यास हुने। यहाँ IAM मा एक समूह सिर्जना गर्ने प्रक्रिया हो।
- समूह सिर्जना गर्न सिंक्याक्स iam-groupcreate- g GROUPNAME [-p PATH] [-v] जहाँ the -p and -v विकल्पहरू छन्। आदेश रेखा इन्टरफेसमा पूर्ण कागजात AWS कागजातहरूमा उपलब्ध छ।
- यदि तपाइँ "awesomeusers" भनिन्छ एक समूह सिर्जना गर्न चाहानुहुन्छ, तपाईले प्रवेश गर्न सक्नुहुनेछ, आईम-समूहकोरेट -g कमाइ प्रम्प्टमा awesomeusers।
- तपाईले जाँच गर्न सक्नुहुनेछ कि समूह आदेश प्रोम्प्टमा आईम-grouplistbypath प्रविष्ट गरेर सही रूपमा सिर्जना गरिएको थियो। यदि तपाईंले मात्र यो समूह सिर्जना गर्नुभयो भने, आउटपुट "जस्तै: अर्न: आईम :: 123456789012: समूह / awesomeusers" जस्तै हुनेछ, जहाँ नम्बर तपाईंको AWS खाता संख्या हो।
समूह पहुँच S3 बाल्टी र CloudFront मा दिनुहोस्
तपाईंको समूहले S3 वा CloudFront मा गर्ने कामलाई नियन्त्रण गर्दछ। पूर्वनिर्धारित रूपमा, तपाइँको समुहलाई AWS मा कुनै पनि पहुँचको पहुँच छैन। मैले नीतिहरू दस्तावेजहरू ठीक ठिक हुन पाईन् तर ठिकै नीतिहरू सिर्जना गर्दा, मैले केही परीक्षण गरेँ र चीजहरू काम गर्न चाहान्छु जुन काम गर्न चाहन्थे।
तपाइँसँग नीतिहरू सिर्जना गर्न केहि विकल्पहरू छन्।
एक विकल्प तपाईं तिनीहरूलाई सीधा प्रम्प्टमा प्रविष्ट गर्न सक्नुहुन्छ। तपाईंले नीति सिर्जना गर्न सक्नुहुनेछ र यसलाई ट्वीक गर्न सक्नुहुनेछ, किनकि मेरो नीति पाठ पाठमा सजिलै लाग्न थाल्यो र त्यसपछि पाठ फाइल अपलोड गर्नुहोस् आईएमम-समूहअपलोडपोलिससँग। यहाँ पाठ फाइल प्रयोग गरेर IAM मा अपलोड प्रक्रिया छ।
- नोटप्याड जस्तो केहि चीज प्रयोग गर्नुहोस् र निम्न पाठ प्रविष्ट गर्नुहोस् र फाइल सुरक्षित गर्नुहोस्:
{
"विवरण": [{
"प्रभाव": "अनुमति दिनुहोस्"
"एक्शन": "s3: *",
"स्रोत": [
"arn: aws: s3 ::: BUCKETNAME",
"arn: aws: s3 ::: BUCKETNAME / *"]
},
{
"प्रभाव": "अनुमति दिनुहोस्"
"एक्शन": "s3: ListAllMyBuckets",
"स्रोत": "arn: aws: s3 ::: *"
},
{
"प्रभाव": "अनुमति दिनुहोस्"
"एक्शन": ["क्लाउडफन्ट: *"],
"स्रोत": "*"
}
]
} - यस नीतिमा 3 खण्डहरू छन्। प्रभावलाई अनुमति गर्न प्रयोग गरिन्छ वा केही प्रकारको पहुँच अस्वीकार गर्नुहोस्। कार्य विशिष्ट समूह हो जुन समुहले गर्न सक्छ। व्यक्तिगत बाल्टीहरूको पहुँच दिनको लागि प्रयोग गरिने स्रोत प्रयोग गरिनेछ।
- तपाईं अलग-अलग कार्यहरू सीमित गर्न सक्नुहुन्छ। यस उदाहरणमा, "एक्शन": ["s3: GetObject", "s3: ListBucket", "s3: GetObjectVersion"], समूह बाल्टीको सामग्री सूची र वस्तुहरू डाउनलोड गर्न सक्षम हुनेछ।
- बाकस "BUCKETNAME" को लागि सबै S3 कार्यहरू प्रदर्शन गर्न पहिलो खण्ड "अनुमति दिन्छ"।
- दोस्रो सेक्शन "अनुमति दिन्छ" समूह S3 मा सबै बाल्टिन सूचीबद्ध गर्न। तपाईंलाई यो आवश्यक छ त्यसैले तपाई AWS कन्सोल जस्ता केहि चीज प्रयोग गर्नुहुन्छ भने तपाइँ वास्तवमा ब्याकेटहरूको सूची हेर्न सक्नुहुनेछ।
- तेस्रो सेक्शनले क्लाउडफ्रेसमा समूहलाई पूर्ण पहुँच दिन्छ।
IAM नीतिहरूमा आउँदा धेरै विकल्पहरू छन्। एएसएस नीति जनरेटर भनिन्छ अमेजनमा एकदम राम्रो उपकरण उपलब्ध छ। यो उपकरणले एउटा GUI प्रदान गर्दछ जहाँ तपाइँ आफ्नो नीतिहरू सिर्जना गर्न सक्नुहुन्छ र नीति लागू गर्न आवश्यक वास्तविक कोड उत्पन्न गर्न सक्नुहुन्छ। तपाईं एएसएस पहिचान र पहुँच व्यवस्थापन अनलाइन कागजात प्रयोग गरी पहुँच नीति भाषा खण्ड पनि जाँच गर्न सक्नुहुनेछ।
प्रयोगकर्ता सिर्जना गर्नुहोस् र समूहमा थप्नुहोस्
नयाँ प्रयोगकर्ता सिर्जना गर्ने र उनीहरूको पहुँच प्रदान गर्नको लागि समूहमा थप्ने प्रक्रियाले दुई कदमहरू समावेश गर्दछ।
- प्रयोगकर्ता सिर्जना गर्न सिंक्याक्स आईम-यूजररेट -U USERNAME [-पी पथ] [-ग्रुपहरू ...] [-के] [-v] जहाँ -p, -g, -k and -v विकल्पहरू छन्। आदेश रेखा इन्टरफेसमा पूर्ण कागजात AWS कागजातहरूमा उपलब्ध छ।
- यदि तपाइँ प्रयोगकर्ता "बब" सिर्जना गर्न चाहानुहुन्छ भने, तपाईले प्रविष्ट गर्नुहुने छ, आईम-यूक्रेरेट -ओब -ब कमाइ प्रिमटमा भयानक प्रविधिहरू।
- तपाईं जाँच गर्न सक्नुहुन्छ कि प्रयोगकर्ता सही ढंगले आईम-grouplistusers प्रविष्ट गरेर सिर्जना गरिएको थियो - g कमांड प्रम्प्टमा awesomeusers। यदि तपाइँले यो प्रयोगकर्ता मात्र सिर्जना गर्नुभयो भने, आउटपुट "एएनएन: ए एस: आईम :: 123456789012: प्रयोगकर्ता / बॉब" जस्ता कुरा हुनेछ, जहाँ नम्बर तपाईंको AWS खाता संख्या हो।
लगइन प्रोफाइल सिर्जना गर्नुहोस् र कुञ्जी सिर्जना गर्नुहोस्
यस बिन्दुमा तपाईले प्रयोगकर्ता सिर्जना गर्नुभयो तर तपाईलाई वास्तवमा एस 3 बाट वस्तुहरू थप्न र हटाउन बाटो प्रदान गर्न आवश्यक छ।
तपाईंको प्रयोगकर्ताहरू S3 को प्रयोग गरेर S3 को पहुँचको साथ उपलब्ध गराउन 2 विकल्पहरू उपलब्ध छन्। तपाईले लगइन प्रोफाइल सिर्जना गर्न सक्नुहुन्छ र पासवर्डहरूसँग आफ्नो प्रयोगकर्ताहरू प्रदान गर्न सक्नुहुनेछ। तिनीहरू अमेजन AWS कन्सोलमा लग इन गर्नका लागि उनीहरूको प्रमाणहरू प्रयोग गर्न सक्छन्। अर्को विकल्प भनेको तपाइँका प्रयोगकर्ताहरूलाई पहुँच कुञ्जी र गोपनीय कुञ्जी दिनुहोस्। तिनीहरू यी कुञ्जीहरू तेस्रो पार्टी उपकरणहरू जस्तै S3 फक्स, CloudBerry S3 एक्सप्लोरर वा S3 ब्राउजरमा प्रयोग गर्न सक्छन्।
लगइन प्रोफाइल सिर्जना गर्नुहोस्
तपाईंको S3 प्रयोगकर्ताहरूको लागि लगइन प्रोफाइल सिर्जना गर्दा तिनीहरूलाई प्रयोगकर्ता नाम र पासवर्ड प्रदान गर्दछ जुन तिनीहरू Amazon एएसएस कन्सोलमा लगइन गर्न प्रयोग गर्न सक्छन्।
- लगइन प्रोफाइल सिर्जना गर्न सिन्ट्याक्स iam-useraddloginprofile -u USERNAME-p पासवर्ड हो। आदेश रेखा इन्टरफेसमा पूर्ण कागजात AWS कागजातहरूमा उपलब्ध छ।
- यदि तपाइँ प्रयोगकर्ता "bob" को लागी लग इन प्रोफाइल सिर्जना गर्न चाहानुहुन्छ भने, तपाईं ईम-प्रयोगकर्ताड्रलॉगिन प्रोफिफाइल -u बब -पी पासवर्डलाई आदेश प्रवाहमा प्रविष्ट गर्नुहुनेछ।
- तपाईं जाँच गर्न सक्नुहुनेछ कि लगइन प्रोफाईल सही तरिकाले सृजना गरिएको थियो आईम-usergetloginprofile -u कब कमाउन प्रम्प्टमा। यदि तपाईँले बबको लागि लगइन प्रोफाईल सिर्जना गर्नुभयो भने, आउटपुट केही "जस्तै" प्रयोगकर्ता बबको लागि लगइन प्रोफाइल अवस्थित हुनेछ "।
कुञ्जी सिर्जना गर्नुहोस्
AWS गोपनीय पहुँच कुञ्जी र सम्बन्धित AWS पहुँच कुञ्जी आइडी सिर्जना गर्नाले तपाईंका प्रयोगकर्ताहरूलाई तेस्रो पक्ष सफ्टवेयर प्रयोग गर्ने अनुमति दिनेछ जस्तै पहिले उल्लेख गरिएको। ध्यान राख्नुहोस् कि सुरक्षा उपायको रूपमा, तपाईंले प्रयोगकर्ता प्रोफाइल थप्दा प्रक्रियामा यी कुञ्जी मात्र प्राप्त गर्न सक्नुहुनेछ। निश्चित गर्नुहोस् कि तपाईले आउटपुट कमाइबाट प्रतिलिपि र पेस्ट गर्नुहोस् र पाठ फाइलमा बचत गर्नुहोस्। तपाईं फाइललाई तपाईंको प्रयोगकर्तामा पठाउन सक्नुहुन्छ।
- प्रयोगकर्ताको लागि कुञ्जी थप्नका लागि सिन्ट्याक्स आईम-प्रयोगकर्ताड्रेक [-u USERNAME] हो। आदेश रेखा इन्टरफेसमा पूर्ण कागजात AWS कागजातहरूमा उपलब्ध छ।
- यदि तपाई प्रयोगकर्ता "bob" को लागि कुञ्जीहरू सिर्जना गर्न चाहानुहुन्छ भने, तपाईँले कमाइ प्रम्प्टमा iam-useraddkey -u bob प्रविष्ट गर्नुहुनेछ।
- आदेशले यस कुञ्जीलाई यो चीज देख्ने कुञ्जीहरू आउट गर्दछ:
AKIACOOB5BQVEXAMPLE
BvQW1IpqVzRdbwPUirD3pK6L8ngoX4PTEXAMPLE
पहिलो रेखा पहुँच कुञ्जी आइडी हो र दोस्रो लाइन गोपनीय पहुँच कुञ्जी हो। तपाईंलाई तेस्रो पक्ष सफ्टवेयरको लागि दुवै आवश्यक छ।
परीक्षण पहुँच
अब तपाईले IAM समूहहरू / प्रयोगकर्ताहरू सिर्जना गर्नुभयो र नीतिहरू प्रयोग गरेर समूह पहुँच दिए, तपाइँलाई पहुँच परीक्षण गर्न आवश्यक छ।
कन्सोल पहुँच
तपाईंको प्रयोगकर्ताहरूले AWS कन्सोलमा लगइन गर्नका लागि तिनीहरूको प्रयोगकर्ता नाम र पासवर्ड प्रयोग गर्न सक्दछ। यद्यपि, यो नियमित कन्सोल लगइन पृष्ठ होइन जुन मुख्य AWS खाताको लागि प्रयोग गरिन्छ।
त्यहाँ एक विशेष URL हो जुन तपाईले प्रयोग गर्न सक्नुहुनेछ जुन तपाईको Amazon AWS खाताको लागी लगइन फाराम प्रदान गर्दछ। यहाँ तपाईंको IAM प्रयोगकर्ताहरूको लागि S3 मा लग इन गर्न URL हो।
https://AWS-ACCOUNT-NUMBER.signin.aws.amazon.com/console/s3
AWS-ACCOUNT-NUMBER तपाईंको नियमित AWS खाता नम्बर हो। तपाईं यो लग ईन्जिनियरिङ् वेब सेवा साइन इन फारममा प्राप्त गर्न सक्नुहुनेछ। लगइन र खातामा क्लिक गर्नुहोस् | खाता गतिविधि। तपाईंको खाता नम्बर माथिल्लो दायाँ कुनामा छ। निश्चित गर्नुहोस् तपाइँ ड्यासहरू हटाउनुहोस्। यूआरएलले केहि देख्न सक्दछ https://123456789012.signin.aws.amazon.com/console/s3।
पहुँच कुञ्जी प्रयोग गर्दै
तपाईं यस लेखमा पहिले नै उल्लिखित तेस्रो पार्टी उपकरणहरू डाउनलोड र स्थापना गर्न सक्नुहुनेछ। तपाईको पहुँच कुञ्जी आइडी र तेस्रो पक्ष उपकरण प्रति गोपनीय पहुँच कुञ्जी प्रविष्ट गर्नुहोस्।
म दृढताले सिफारिस गर्छु कि तपाइँ एक प्रारम्भिक प्रयोगकर्ता सिर्जना गर्नुहोला र त्यो प्रयोगकर्ताले पूर्णतया परीक्षण गर्न सक्दछ जुन तिनीहरूले S3 मा गर्ने सबै कुरा गर्न सक्दछ। तपाइँ एक प्रयोगकर्तालाई प्रमाणित गरे पछि, तपाईं आफ्नो सबै S3 प्रयोगकर्ताहरू सेट अप गर्न अगाडी बढ्न सक्नुहुनेछ।
स्रोतहरू
यहाँ पहिचान र पहुँच व्यवस्थापन (आईएएम) को राम्रो समझ दिनको लागि यहाँ केहि स्रोतहरू छन्।
- IAM सँग सुरु हुँदै
- IAM कमान लाइन टुलकिट
- Amazon AWS कन्सोल
- AWS नीति जेनरेटर
- AWS पहिचान र पहुँच व्यवस्थापन प्रयोग गर्दै
- IAM रिलीज नोट्स
- IAM छलफल फोरम
- IAM FAQs