AWS CLI का उपयोग करके IAM भूमिका कैसे ग्रहण करें?

Aws Cli Ka Upayoga Karake Iam Bhumika Kaise Grahana Karem



चूँकि AWS कई सेवाएँ और भारी लाभ प्रदान करता है, इसलिए यह स्वाभाविक है कि आईटी विशेषज्ञों द्वारा सुरक्षा संबंधी चिंताएँ उठाई गईं। इन सुरक्षा चिंताओं को दूर करने के लिए, AWS द्वारा IAM सेवा शुरू की गई थी। AWS IAM मुख्य वेब सेवाओं में से एक है जो उपयोगकर्ताओं को AWS संसाधनों को सुरक्षित करने की अनुमति देती है। IAM विभिन्न उपयोगकर्ताओं के लिए अनुमतियों को परिभाषित करके AWS सेवाओं के केंद्रीय पहुंच प्रबंधन की कार्यक्षमता प्रदान करता है।

त्वरित रूपरेखा

इस लेख में, आप इसके बारे में जानेंगे:







AWS IAM भूमिका क्या है?
AWS में मान लें कि भूमिका क्या है?
AWS CLI का उपयोग करके IAM भूमिका कैसे ग्रहण करें?



अंतिम विचार



IAM भूमिकाओं और अनुमतियों के साथ, हम AWS सेवाओं तक प्रमाणित और अधिकृत पहुंच निर्धारित कर सकते हैं। ये भूमिकाएँ और अनुमतियाँ केवल AWS खाते के रूट उपयोगकर्ता (स्वामी) द्वारा निर्दिष्ट की जा सकती हैं।





AWS IAM भूमिका क्या है?

IAM भूमिका AWS खाते के भीतर रूट उपयोगकर्ता द्वारा बनाई गई एक पहचान है। इस पहचान को विशिष्ट अनुमतियाँ सौंपी गई हैं जो AWS संसाधनों तक IAM भूमिका की पहुंच के दायरे को परिभाषित करती हैं। ये अनुमतियाँ या तो AWS-प्रबंधित या रूट उपयोगकर्ता द्वारा कस्टम-परिभाषित हो सकती हैं।

एक IAM भूमिका IAM उपयोगकर्ता के समान ही है, सिवाय इसके कि IAM भूमिका कुछ अनुमतियों के साथ एक पहचान है, जबकि उपयोगकर्ता कुछ कार्यात्मकताओं को निष्पादित करने के लिए इन भूमिकाओं को ग्रहण कर सकता है। भूमिका के लिए दी गई अनुमतियाँ परिभाषित करती हैं कि इस पहचान (IAM भूमिका) के साथ क्या कार्रवाई की जा सकती है।



AWS में मान लें कि भूमिका क्या है?

मान लें कि भूमिका AWS IAM सेवा की कार्यात्मकताओं में से एक है जो उपयोगकर्ता को AWS सेवाओं के साथ कार्य करने की अनुमति देती है, हालांकि सेवा के भीतर संसाधन तक पहुंचने या हेरफेर करने की अनुमति उपयोगकर्ता को नहीं दी गई है। जब कोई भूमिका मान ली जाती है तो ये अनुमतियाँ अप्रत्यक्ष रूप से उपयोगकर्ता को सौंपी जाती हैं। AWS संसाधनों तक पहुँचने के लिए सत्र-आधारित लॉगिन के साथ अस्थायी क्रेडेंशियल्स का एक सेट का उपयोग किया जाता है।

इन अस्थायी क्रेडेंशियल्स में एक गुप्त एक्सेस कुंजी, एक्सेस कुंजी आईडी और सुरक्षा टोकन शामिल हैं। AWS रूट उपयोगकर्ता द्वारा बनाई गई IAM भूमिकाएँ AWS खाते के अन्य उपयोगकर्ताओं या उन उपयोगकर्ताओं द्वारा ग्रहण की जा सकती हैं जिनके ARN का उल्लेख भूमिका की नीति में किया गया है। वह नीति जिसमें उपयोगकर्ताओं या संसाधनों का ARN शामिल होता है, कहलाती है विश्वास नीति .

अनुमति नीति और ट्रस्ट नीति के बीच क्या अंतर है?

विभिन्न तरीकों के माध्यम से ग्रहण-भूमिका कार्यक्षमता को लागू करने से पहले, दो मुख्य अवधारणाएँ हैं जिन्हें उपयोगकर्ता को समझना चाहिए। IAM सेवा में दो प्रकार की नीतियां हैं:

    • विश्वास नीति: एक ट्रस्ट नीति यह निर्धारित करती है कि कौन विशिष्ट IAM भूमिका निभा सकता है। किसी उपयोगकर्ता द्वारा ग्रहण की जाने वाली भूमिका के लिए, उपयोगकर्ता के ARN का IAM भूमिका की विश्वास नीति में उल्लेख किया गया है। यह विश्वास नीति यह निर्धारित करती है कि उपयोगकर्ता या संसाधन इस भूमिका को संभालने के लिए एक विश्वसनीय इकाई हैं या नहीं।
    • अनुमति नीति: यह नीति निर्धारित करती है कि उपयोगकर्ता क्या कर सकता है या भूमिका के साथ क्या कार्य कर सकता है।

AWS CLI का उपयोग करके IAM भूमिका कैसे ग्रहण करें?

किसी भूमिका को मानना ​​स्वयं को किसी अन्य उपयोगकर्ता के रूप में छिपाने के समान है जो कुछ कार्यों को करने के लिए प्रमाणित और अधिकृत है। एक पहचान मानते हुए, AWS ने यह सुनिश्चित किया है कि सुरक्षा बरकरार रहे।

आइए निम्नलिखित उदाहरण पर विचार करके अस्यूम-रोल कार्यक्षमता की कार्यप्रणाली को समझें।

उदाहरण के लिए, AWS खाते में एक उपयोगकर्ता मौजूद है जिसे S3 बकेट के लिए कोई अनुमति नहीं दी गई है। 'केवल पढ़ने के लिए पहुँच' अनुमति नीति कहलाती है जो IAM भूमिका से जुड़ी होती है। उपयोगकर्ता को यह भूमिका निभाने के लिए, IAM भूमिका की नीति में उपयोगकर्ता के ARN का उल्लेख किया गया है। इस नीति को अब कहा जाता है 'विश्वास नीति' और यह अनुमति नीति से भिन्न है. ट्रस्ट नीति महत्वपूर्ण है क्योंकि यह AWS को यह निर्धारित करने में मदद करती है कि उपयोगकर्ता एक अधिकृत इकाई है या नहीं।

ध्यान दें कि एआरएन का उल्लेख ट्रस्ट नीति में किया गया है, न कि आईएएम भूमिका की अनुमति नीति में। भूमिका ग्रहण करके, उपयोगकर्ता भूमिका की अनुमति नीति द्वारा परिभाषित कुछ प्रशासनिक क्रियाएं कर सकता है। इन क्रियाओं में किसी संसाधन को जोड़ना, हटाना, संशोधित करना या पुनर्स्थापित करना आदि शामिल हैं।

AWS CLI के साथ भूमिका निभाने की तीन विधियाँ निम्नलिखित हैं:

विधि 1: एसटीएस (सुरक्षा टोकन सेवा) का उपयोग करना

उपयोगकर्ता एसटीएस अनुभाग (सिक्योर टोकन सर्विस) में कमांड निष्पादित करके एक भूमिका निभा सकते हैं जो अस्थायी क्रेडेंशियल्स का एक सेट लौटाता है। संसाधनों पर एपीआई कॉल करने के लिए सत्र-आधारित लॉगिन स्थापित करने के लिए अस्थायी क्रेडेंशियल का उपयोग किया जाता है। हालाँकि, वहाँ हैं दो अपवाद एसटीएस का उपयोग करते समय यानी, GetFederationToken और GetSessionToken.

सत्र और फेडरेशन टोकन की गोपनीय जानकारी को सुरक्षित रखने के लिए उपयोगकर्ता को इन टोकन तक पहुंचने से प्रतिबंधित किया गया है। ताकि किसी भी हालत में सुरक्षा से समझौता न हो. कोई भूमिका ग्रहण करके, उपयोगकर्ता अपने निर्दिष्ट विशेषाधिकारों को बढ़ा सकता है।

लेख के इस भाग में, हम एसटीएस कमांड का उपयोग करके अस्थायी क्रेडेंशियल्स के एक सेट का अनुरोध करेंगे। नीचे चरण दिए गए हैं:

चरण 1: एक उपयोगकर्ता और उपयोगकर्ता नीति बनाएं

सबसे पहले, हम करेंगे एक IAM उपयोगकर्ता बनाएं बिना किसी अनुमति के. इस प्रयोजन के लिए, खोलें अध्यक्ष एवं प्रबंध निदेशक विंडोज़ के स्टार्ट मेनू से:


केवल रूट उपयोक्ता कर सकना बनाएं एक आईएएम उपयोगकर्ता AWS खाते के भीतर. इसलिए, निम्नलिखित कमांड का उपयोग करके AWS रूट खाते में साइन इन करें:

एडब्ल्यूएस कॉन्फ़िगर करें


इस डेमो के लिए क्रेडेंशियल पहले से ही सीएलआई के भीतर कॉन्फ़िगर किए गए हैं जैसा कि कमांड के आउटपुट में दिखाया गया है:


और अधिक जानें:

को एक IAM उपयोगकर्ता बनाएं , सीएलआई को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस मैं क्रिएट-यूजर हूं --उपयोगकर्ता नाम डेमो-उपयोगकर्ता


प्रतिस्थापित करें डेमो-उपयोगकर्ता आपके साथ आईएएम उपयोगकर्ता नाम.

बचाओ 'अर्न' जैसा कि यह होगा कमांड के आउटपुट में दिया गया है आवश्यक कब बनाना विश्वास नीति :


और पढ़ें:

अगला कदम है आज्ञा देना उपयोगकर्ता (डेमो-उपयोगकर्ता ) को एक भूमिका ग्रहण करें . इस प्रयोजन के लिए, एक बनाएं JSON फ़ाइल किसी का उपयोग करना पाठ संपादक आप पसंद करेंगे। इस डेमो के लिए हमने प्रयोग किया है नोटपैड जैसा कि नीचे उल्लिखित आदेश में निर्दिष्ट है:

विंडोज के लिए

नोटपैड उपयोगकर्ता-नीति.json


प्रतिस्थापित करें उपयोगकर्ता-नीति आपके IAM पॉलिसी नाम के साथ।

लिनक्स ओएस के लिए

क्योंकि उपयोगकर्ता-नीति.json


फिलहाल, हम इस डेमो के लिए विंडोज ऑपरेटिंग सिस्टम का उपयोग कर रहे हैं:


इससे नोटपैड खुल जाएगा. निम्नलिखित नीति को नोटपैड में चिपकाएँ और दबाएँ 'CTRL + S' परिवर्तनों को सहेजने के लिए कीबोर्ड से:

{
'संस्करण' : '2012-10-17' ,
'कथन' : [
{
'प्रभाव' : 'अनुमति दें' ,
'कार्रवाई' : [
'ec2: वर्णन करें*' ,
'मैं: सूची भूमिकाएँ' ,
'एसटीएस: भूमिका मान लें'
] ,
'संसाधन' : '*'
}
]
}


नीचे निर्दिष्ट नीति का संक्षिप्त विवरण दिया गया है:

    • ec2: वर्णन करें: यह अनुमति निर्दिष्ट करती है कि उपयोगकर्ता सभी एएमआई, स्नैपशॉट या ईसी2 उदाहरण देख या सूचीबद्ध कर सकता है
    • मैं:सूचीभूमिकाएं: यह अनुमति निर्दिष्ट करती है कि उपयोगकर्ता IAM सेवा के भीतर सभी भूमिकाओं को सूचीबद्ध कर सकता है।
    • एसटीएस:मान लेंभूमिका: यह अनुमति दर्शाती है कि उपयोगकर्ता IAM सेवा के भीतर परिभाषित भूमिका ग्रहण कर सकता है।

यहां, नीति को नोटपैड के भीतर संपादित किया गया है और सहेजा गया है:


प्रत्येक AWS संसाधन एक सौंपा गया है एक्सेस-संसाधन नाम (एआरएन) कौन विशिष्ट रूप से पहचान करता है संसाधन. पॉलिसी का ARN निर्धारित करने के लिए, नीचे दिए गए कमांड का उपयोग करें।

एडब्ल्यूएस मैं क्रिएट-पॉलिसी हूं --पालिसी का नाम उपयोगकर्ता-नीति --नीति-दस्तावेज़ फ़ाइल: // उपयोगकर्ता-नीति.json


उपर्युक्त आदेश में:

    • -पालिसी का नाम: मान बदलें 'उपयोगकर्ता-नीति' अपनी पसंद के किसी भी पॉलिसी नाम के साथ।
    • -नीति-दस्तावेज़: इस फ़ील्ड में, ' को प्रतिस्थापित करें उपयोगकर्ता-नीति.json” json फ़ाइल के नाम के साथ जिसमें उपयोगकर्ता के लिए नीति शामिल है।

उपर्युक्त कमांड का आउटपुट इस प्रकार है। बचाओ 'अर्न' पॉलिसी के आउटपुट में इसका उल्लेख किया गया है क्योंकि उपयोगकर्ता के साथ इस पॉलिसी को संलग्न करते समय इसकी आवश्यकता होगी:

चरण 2: उपयोगकर्ता के साथ नीति संलग्न करें

यह नीति उपयोगकर्ता को सूचीबद्ध करने की अनुमति देगी EC2 उदाहरण , दोस्त , आदि। जब उपयोगकर्ता किसी भिन्न अनुमति के साथ कोई भूमिका ग्रहण करता है, तो उपयोगकर्ता केवल वही विशिष्ट कार्रवाई करने में सक्षम होगा जो अनुमति नीति द्वारा अनुमत है।

इस अनुभाग में पहले बनाए गए उपयोगकर्ता के साथ नीति संलग्न करने के लिए, निम्न आदेश का उपयोग करें:

एडब्ल्यूएस मैं अटैच-यूजर-पॉलिसी हूं --उपयोगकर्ता नाम डेमो-उपयोगकर्ता --नीति-अर्न 'arn:aws:iam::123456789:नीति/उपयोगकर्ता-नीति'


उपर्युक्त आदेश में:

    • -उपयोगकर्ता नाम: प्रतिस्थापित करें 'डेमो-उपयोगकर्ता' में -उपयोगकर्ता नाम आपके IAM उपयोगकर्ता नाम के साथ फ़ील्ड।
    • -पॉलिसी-अर्न: इसी प्रकार, में -पॉलिसी-अर्न, विवरण दें 'अर्न' पिछले कमांड के आउटपुट से यानी -क्रिएट-पॉलिसी।

आवश्यक परिवर्तन करने के बाद कमांड निष्पादित करके, नीति को उपयोगकर्ता से सफलतापूर्वक जोड़ दिया गया है:


यह सत्यापित करने के लिए कि क्या नीति उपयोगकर्ता के साथ संलग्न की गई है, सीएलआई को निम्नलिखित आदेश प्रदान करें:

aws iam सूची-संलग्न-उपयोगकर्ता-नीतियाँ --उपयोगकर्ता नाम डेमो-उपयोगकर्ता


प्रतिस्थापित करें डेमो-उपयोगकर्ता अपने IAM के साथ उपयोगकर्ता नाम उपयोगकर्ता बनाते समय निर्दिष्ट किया गया।

निम्नलिखित कमांड का आउटपुट सत्यापित करता है कि नीति उपयोगकर्ता के साथ सफलतापूर्वक संलग्न की गई है:

चरण 3: एक ट्रस्ट नीति और IAM भूमिका बनाएं

एक विश्वास संबंध तब स्थापित होता है जब किसी नीति में किसी संसाधन या उपयोगकर्ता का एआरएन निर्दिष्ट किया जाता है। यह कार्यक्षमता तब उपयोगकर्ताओं या इकाई को कुछ कार्य करने में सक्षम बनाती है क्योंकि उन्हें नीति द्वारा विश्वसनीय माना जाता है।

इस चरण में, हम एक ऐसी नीति बनाएंगे जो IAM भूमिका और उपयोगकर्ता के बीच विश्वास संबंध स्थापित करेगी। यह ट्रस्ट नीति IAM भूमिका से जुड़ी होगी। तब IAM की भूमिका उपयोगकर्ता द्वारा ग्रहण की जाएगी जो अप्रत्यक्ष रूप से उपयोगकर्ता को नीति में निर्दिष्ट कार्यों को करने की अनुमति देगी।

विश्वास नीति बनाने के लिए, आदेश इस प्रकार दिए गए हैं:

विंडोज के लिए

नोटपैड ट्रस्ट-रोल-पॉलिसी.जेसन


प्रतिस्थापित करें ट्रस्ट-भूमिका-नीति.json पॉलिसी के लिए आपकी पसंद के नाम के साथ।

लिनक्स ओएस के लिए

क्योंकि ट्रस्ट-भूमिका-नीति.json


प्रतिस्थापित करें ट्रस्ट-भूमिका-नीति.json पॉलिसी के लिए आपकी पसंद के नाम के साथ।

ट्रस्ट नीति का पालन करता है JSON प्रारूप जैसा कि निर्दिष्ट किया गया है .json निम्नलिखित आदेश में विस्तार:


इससे नोटपैड खुल जाएगा. पेस्ट करें निम्नलिखित नीति नोटपैड के भीतर और हिट करें 'CTRL + S' परिवर्तनों को सहेजने के लिए कीबोर्ड से बटन। उपयोगकर्ता के ARN को IAM कंसोल के उपयोगकर्ता के डैशबोर्ड से भी कॉपी किया जा सकता है। इस प्रयोजन के लिए, IAM डैशबोर्ड पर जाएँ और उपयोगकर्ता के नाम पर क्लिक करें। प्रदर्शित कॉन्फ़िगरेशन से, सारांश अनुभाग के भीतर प्रदर्शित उपयोगकर्ता के एआरएन की प्रतिलिपि बनाएँ।

{
'संस्करण' : '2012-10-17' ,
'कथन' : {
'प्रभाव' : 'अनुमति दें' ,
'प्रमुख' : {
'एडब्ल्यूएस' : 'arn:aws:iam::123456789012:उपयोगकर्ता/उदाहरण-उपयोगकर्ता'
} ,
'कार्रवाई' : 'एसटीएस: भूमिका मान लें'
}
}


उपर्युक्त नीति में:

    • एडब्ल्यूएस: प्रतिस्थापित करें AWS फ़ील्ड मान 'arn:aws:iam::123456789012:उपयोगकर्ता/उदाहरण-उपयोगकर्ता' के साथ उपयोगकर्ता का ARN जिसे –create-user कमांड के आउटपुट में प्रदर्शित किया गया था।

उपयोगकर्ता इसमें उपयोगकर्ता के ARN को निर्दिष्ट करके अन्य उपयोगकर्ताओं को IAM भूमिका निभाने से प्रतिबंधित कर सकता है 'एडब्ल्यूएस' मैदान:


और पढ़ें:

अब, एक IAM भूमिका बनाएं और उसके साथ विश्वास नीति संलग्न करें। IAM भूमिका बनाने के लिए, नीचे दिए गए कमांड का उपयोग करें:

एडब्ल्यूएस मैं क्रिएट-रोल हूं --भूमिका का नाम उपयोगकर्ता भूमिका --मान लें-भूमिका-नीति-दस्तावेज़ फ़ाइल: // ट्रस्ट-भूमिका-नीति.json


उपर्युक्त क्षेत्रों का विवरण निम्नलिखित है:

    • -भूमिका का नाम: इस फ़ील्ड का उपयोग उस नाम को इनपुट करने के लिए किया जाता है जिसे इस IAM भूमिका को सौंपा जाएगा। 'उपयोगकर्ता-भूमिका' मान को अपनी पसंद के IAM भूमिका नाम से बदलें।
    • –मान लें-भूमिका-नीति-दस्तावेज़: इस फ़ील्ड में कमांड में दिए गए पथ को निर्दिष्ट करें। Trust-role-policy.json को पिछले अनुभाग में आपके द्वारा निर्दिष्ट पॉलिसी नाम से बदलें।

इस कमांड को निष्पादित करने से, यह आउटपुट में जानकारी के कई टुकड़े लौटाएगा जैसे, एआरएन, पथ, आईडी, आदि:


और पढ़ें:

इस भूमिका को संभालने पर, उपयोगकर्ता इसे निष्पादित करने में सक्षम होगा 'केवल पढ़ने के लिए पहुँच' S3 बाल्टी के साथ कार्रवाई. आदेश इस प्रकार दिया गया है:

एडब्ल्यूएस मैं अटैच-रोल-पॉलिसी हूं --भूमिका का नाम उपयोगकर्ता भूमिका --नीति-अर्न 'arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess'


उपरोक्त आदेश में:

    • -भूमिका का नाम: प्रतिस्थापित करें ' उपयोगकर्ता भूमिका' -भूमिका-नाम फ़ील्ड में के साथ IAM भूमिका का नाम जिसे आपने पहले इस ट्यूटोरियल में निर्दिष्ट किया था।
    • -पॉलिसी-अर्न: –policy-arn में निर्दिष्ट अर्न S3 बकेट के लिए ReadOnlyAccess अनुमति को संदर्भित करता है।

इस छवि में, भूमिका को S3 बकेट के लिए ReadOnlyAccess अनुमति दी गई है:


यह सत्यापित करने के लिए कि भूमिका को अनुमति दी गई है या नहीं, निम्न आदेश का उपयोग करें:

aws iam सूची-संलग्न-भूमिका-नीतियाँ --भूमिका का नाम उपयोगकर्ता भूमिका


प्रतिस्थापित करें 'उपयोगकर्ता भूमिका' आपके IAM भूमिका नाम के साथ।

'AmazonS3ReadOnlyAccess' अनुमति IAM भूमिका से जुड़ी हुई है। कमांड का आउटपुट इस प्रकार दिया गया है:

चरण 4: एक्सेस कुंजियाँ बनाएँ

इस अनुभाग में, हम उपयोगकर्ता के लिए एक्सेस कुंजियाँ बनाएंगे। AWS खाते में लॉग इन करने के लिए एक्सेस कुंजियों का उपयोग किया जाएगा:

एडब्ल्यूएस मैं क्रिएट-एक्सेस-की हूं --उपयोगकर्ता नाम डेमो-उपयोगकर्ता


प्रतिस्थापित करें डेमो-उपयोगकर्ता उपयोगकर्ता बनाते समय दिए गए आपके IAM उपयोगकर्ता नाम के साथ।

यहां, कमांड ने अतिरिक्त विवरण जैसे कि निर्मित तिथि, स्थिति इत्यादि के साथ एक्सेस कुंजी जोड़े (एक्सेसकीआईडी ​​और गुप्त एक्सेस कुंजी) का एक सेट लौटाया है। बचाना AccessKeyId और SecretAccessKey क्योंकि वे बाद में ट्यूटोरियल में आवश्यक हैं:


और पढ़ें:

चरण 5: एक्सेस कुंजी कॉन्फ़िगर करें और IAM उपयोगकर्ता को सत्यापित करें

एक्सेस कुंजी को कॉन्फ़िगर करने के लिए, सीएमडी को निम्नलिखित कमांड प्रदान करें और फिर एक्सेस कुंजी आईडी और गुप्त एक्सेस कुंजी दर्ज करें:

एडब्ल्यूएस कॉन्फ़िगर करें


सीएलआई को एक्सेस कुंजी आईडी और गुप्त एक्सेस कुंजी प्रदान करें जो इस अनुभाग के चरण 4 में बनाई गई थीं। क्षेत्र के लिए, हमने डिफ़ॉल्ट सेटिंग्स रखी हैं। उपयोगकर्ता डिफ़ॉल्ट आउटपुट स्वरूप के लिए किसी भी आउटपुट स्वरूप को कॉन्फ़िगर कर सकते हैं। इस डेमो के लिए, हमने निर्दिष्ट किया है JSON प्रारूप:


यह सत्यापित करने के लिए कि क्या IAM उपयोगकर्ता कॉन्फ़िगर किया गया है, CLI को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस एसटीएस गेट-कॉलर-पहचान


कमांड का आउटपुट इंगित करता है कि 'डेमो-उपयोगकर्ता' सफलतापूर्वक कॉन्फ़िगर किया गया है, और वर्तमान में AWS खाते में लॉग इन है:


यह निर्धारित करने के लिए कि IAM उपयोगकर्ता EC2 उदाहरणों को सूचीबद्ध कर सकता है और वर्तमान में S3 बकेट तक उसकी कोई पहुंच नहीं है, निम्न आदेश का उपयोग करें:

aws ec2 वर्णन-उदाहरण --सवाल 'आरक्षण[*].इंस्टेंस[*].[VpcId, InstanceId, ImageId, InstanceType]'


कमांड का आउटपुट इस प्रकार दिया गया है:


अब, यह सत्यापित करने के लिए निम्नलिखित कमांड प्रदान करें कि उपयोगकर्ता S3 बकेट तक पहुंच सकता है या नहीं:

एडब्ल्यूएस s3 रास


यह प्रदर्शित करेगा 'पहुंच अस्वीकृत' त्रुटि जो इंगित करती है कि उपयोगकर्ता को S3 बकेट तक पहुंचने की अनुमति नहीं है:

चरण 6: IAM भूमिका ग्रहण करें

उपयोगकर्ता को AWS खाते में IAM भूमिकाओं को सूचीबद्ध करने की अनुमति है। इसलिए, भूमिका ग्रहण करने के लिए, हम पहले निम्नलिखित आदेश निष्पादित करके एआरएन जैसी आवश्यक जानकारी प्राप्त करेंगे:

aws iam सूची-भूमिकाएँ --सवाल 'भूमिकाएं[?भूमिकानाम == 'उपयोगकर्ता-भूमिका'].[भूमिकानाम, अर्न]'


'रोलनाम' फ़ील्ड में 'उपयोगकर्ता-भूमिका' को IAM भूमिका नाम से बदलें।

उपर्युक्त कमांड के आउटपुट में ARN दिया गया है:


अब जबकि हमारे पास IAM भूमिका का ARN है, हम निम्नलिखित कमांड का उपयोग करके भूमिका ग्रहण कर सकते हैं:

एडब्ल्यूएस एसटीएस भूमिका ग्रहण करें --भूमिका-अर्न 'arn:aws:iam::123456789012:भूमिका/उदाहरण-भूमिका' --भूमिका-सत्र-नाम AWSCLI-सत्र


उपरोक्त आदेश में:

    • –भूमिका-अर्न: –role-arn के लिए उल्लिखित मान को IAM भूमिका के ARN से बदलें।
    • –भूमिका-सत्र-नाम: उपयोगकर्ता इस क्षेत्र के लिए प्राथमिकता का कोई भी नाम प्रदान कर सकता है।

उपर्युक्त आदेश को निष्पादित करके, अस्थायी क्रेडेंशियल्स का एक सेट वापस कर दिया गया है। इन अस्थायी क्रेडेंशियल्स का उपयोग वांछित अनुमति यानी, ReadOnlyAccess के साथ IAM भूमिका ग्रहण करने के लिए किया जाएगा। इन अस्थायी क्रेडेंशियल्स को कॉन्फ़िगर करते समय AccessKeyId और SecretAccessKey का उपयोग किया जाएगा:


यहां कमांड के आउटपुट का संक्षिप्त विवरण दिया गया है:

    • सत्रटोकन: सत्र-आधारित लॉगिन बनाने के लिए सत्र टोकन का उपयोग किया जाता है। इस फ़ील्ड का मान सहेजें क्योंकि क्रेडेंशियल कॉन्फ़िगर करते समय इसकी आवश्यकता होगी।
    • समाप्ति: सत्र टोकन की समाप्ति तिथि और समय होता है। निर्दिष्ट समय के बाद टोकन का कोई उपयोग नहीं होगा और उपयोगकर्ता भूमिका ग्रहण नहीं कर पाएगा।

चरण 7: पर्यावरण चर कॉन्फ़िगर करें

अस्थायी क्रेडेंशियल्स को कॉन्फ़िगर करने के लिए, हम विंडोज़ के लिए 'सेट' कमांड का उपयोग करेंगे और फिर एक्सेस कुंजी आईडी, गुप्त एक्सेस कुंजी, सत्र टोकन इत्यादि का मान प्रदान करेंगे:

विंडोज के लिए

तय करना AWS_ACCESS_KEY_ID =रोलएक्सेसकीआईडी


RoleAccessKeyID को एक्सेस कुंजी आईडी से बदलें जिसे चरण 6 में कमांड द्वारा लौटाया गया है।

लिनक्स ओएस के लिए

निर्यात AWS_ACCESS_KEY_ID =रोलएक्सेसकीआईडी


RoleAccessKeyID को एक्सेस कुंजी आईडी से बदलें जो चरण 6 में कमांड द्वारा लौटाया गया है।

एक्सेस कुंजी कॉन्फ़िगर की गई है:


इसके बाद, हम विंडोज़ के लिए 'सेट' कमांड का उपयोग करके गुप्त एक्सेस कुंजी को कॉन्फ़िगर करेंगे:

विंडोज के लिए

तय करना AWS_SECRET_ACCESS_KEY =रोलसीक्रेटकी


RoleSecretKey को सीक्रेट एक्सेस कुंजी मान से बदलें जो चरण 6 में कमांड द्वारा लौटाया गया है।

लिनक्स ओएस के लिए

निर्यात AWS_SECRET_ACCESS_KEY =रोलसीक्रेटकी


AWS_SECRET_ACCESS_KEY को चरण 6 में कमांड द्वारा लौटाई गई गुप्त एक्सेस कुंजी से बदलें।

गुप्त पहुँच कुंजी सफलतापूर्वक कॉन्फ़िगर की गई है:


अंत में, हम सत्र-आधारित लॉगिन स्थापित करने के लिए सत्र टोकन को कॉन्फ़िगर करेंगे। इस प्रयोजन के लिए, नीचे उल्लिखित कमांड का उपयोग करें:

विंडोज के लिए

तय करना AWS_SESSION_TOKEN =भूमिकासत्रटोकन


RoleSessionToken को सेशन टोकन मान से बदलें जो चरण 6 में कमांड द्वारा लौटाया गया है।

लिनक्स ओएस के लिए

निर्यात AWS_SESSION_TOKEN =भूमिकासत्रटोकन


RoleSessionToken को सेशन टोकन मान से बदलें जो चरण 6 में कमांड द्वारा लौटाया गया है।

सत्र टोकन का मान सफलतापूर्वक कॉन्फ़िगर किया गया है:


सीएमडी से सत्र टोकन के मूल्य की प्रतिलिपि बनाने के लिए, दबाएँ “CTRL+SHIFT+C” .

पर्यावरण चर को कॉन्फ़िगर करने के बाद, निम्नलिखित कमांड का उपयोग करके सत्यापित करें कि क्या भूमिका उपयोगकर्ता द्वारा ग्रहण की गई है:

एडब्ल्यूएस एसटीएस गेट-कॉलर-पहचान


कमांड का आउटपुट सत्यापित करता है कि IAM की भूमिका रही है सफलतापूर्वक मान लिया गया उपयोगकर्ता द्वारा ARN रिटर्न है 'arn:aws:sts::123456789012:कल्पित-भूमिका/उपयोगकर्ता-भूमिका/AWSCLI-सत्र' के बजाय 'arn:aws:iam::123456789012:उपयोगकर्ता/डेमो-उपयोगकर्ता':


चूँकि भूमिका में ReadOnlyAccess अनुमति शामिल है, उपयोगकर्ता को अब बकेट को सूचीबद्ध करने में सक्षम होना चाहिए। इस प्रयोजन के लिए, सीएलआई को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस s3 रास


कमांड का आउटपुट वर्तमान में AWS खाते के भीतर कॉन्फ़िगर किए गए सभी S3 बकेट को सफलतापूर्वक सूचीबद्ध करता है:


हालाँकि, उपयोगकर्ता EC2 सेवा तक नहीं पहुँच पाएगा क्योंकि कल्पित भूमिका के पास EC2 सेवा के लिए कोई अनुमति नहीं है। इसे सत्यापित करने के लिए, निम्न आदेश का उपयोग करें:

aws ec2 वर्णन-उदाहरण --सवाल 'आरक्षण[*].इंस्टेंस[*].[VpcId, InstanceId, ImageId, InstanceType]'


पहले, उपयोगकर्ता EC2 सेवा जानकारी तक पहुंचने में सक्षम था। हालाँकि, उपर्युक्त आदेश को निष्पादित करने पर, a 'पहुंच अस्वीकृत' त्रुटि हो गई है। उपयोगकर्ता ने सफलतापूर्वक IAM भूमिका ग्रहण कर ली है:


यह सब इस अनुभाग से है.

बोनस टिप: पर्यावरण चर को अनसेट करें

IAM उपयोगकर्ता यानी डेमो-उपयोगकर्ता पर लौटने के लिए, उपयोगकर्ता पर्यावरण चर को खाली स्ट्रिंग्स पर सेट करके पर्यावरण चर को हटा सकता है। निम्नलिखित दिए गए आदेश हैं:

विंडोज के लिए

तय करना AWS_ACCESS_KEY_ID =
तय करना AWS_SECRET_ACCESS_KEY =
तय करना AWS_SESSION_TOKEN =


लिनक्स के लिए

नीचे उल्लिखित कमांड का प्रयोग करें:

अनसेट AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_SESSION_TOKEN


उपर्युक्त आदेश पर्यावरण चर को अनसेट कर देंगे:


उपरोक्त आदेशों को निष्पादित करने के बाद, कंसोल को अब वापस लौटना चाहिए 'डेमो-उपयोगकर्ता' कल्पित भूमिका अर्थात उपयोगकर्ता-भूमिका के बजाय वर्तमान में लॉग-इन उपयोगकर्ता के रूप में। इस उद्देश्य के लिए, हम निम्नलिखित कमांड का उपयोग करेंगे:

एडब्ल्यूएस एसटीएस गेट-कॉलर-पहचान


कमांड का आउटपुट इंगित करता है कि वर्तमान में लॉग-इन उपयोगकर्ता डेमो-उपयोगकर्ता है:


इसी तरह, रूट यूजर के रूप में लॉगिन करने के लिए, का पालन करें “C:\Users%USERPROFILE%aws” पथ और क्रेडेंशियल फ़ाइल पर क्लिक करें:


क्रेडेंशियल फ़ाइल के भीतर, एक्सेस कुंजी और गुप्त एक्सेस कुंजी के मानों को रूट उपयोगकर्ता की एक्सेस और गुप्त एक्सेस कुंजी से बदलें:


यह सत्यापित करने के लिए कि क्या क्रेडेंशियल ठीक से कॉन्फ़िगर किए गए हैं, सीएलआई को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस कॉन्फ़िगर करें


यहां, नीचे दी गई छवि में, हम देख सकते हैं कि रूट उपयोगकर्ता की एक्सेस कुंजी और गुप्त एक्सेस कुंजी सफलतापूर्वक कॉन्फ़िगर की गई है:


ट्यूटोरियल के इस भाग से बस इतना ही।

विधि 2: -प्रोफ़ाइल पैरामीटर का उपयोग करना

भूमिका ग्रहण करने का एक अन्य तरीका सीएलआई में '-प्रोफ़ाइल' फ़ील्ड का उपयोग करना है। लेख का यह भाग -प्रोफ़ाइल के माध्यम से AWS में भूमिका संभालने का व्यावहारिक कार्यान्वयन प्रस्तुत करता है। इसके लिए चरण नीचे दिए गए हैं:

चरण 1: एक IAM उपयोगकर्ता बनाएँ

IAM उपयोगकर्ता बनाने के लिए, निम्न आदेश का उपयोग करके CLI के माध्यम से रूट उपयोगकर्ता खाते में लॉग इन करें:

एडब्ल्यूएस कॉन्फ़िगर करें


इस डेमो के लिए क्रेडेंशियल पहले से ही सीएलआई के भीतर कॉन्फ़िगर किए गए हैं जैसा कि कमांड के आउटपुट में दिखाया गया है:


और अधिक जानें:

IAM उपयोगकर्ता बनाने के लिए, CLI को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस मैं क्रिएट-यूजर हूं --उपयोगकर्ता नाम प्रोफ़ाइल-उपयोगकर्ता


उपयोगकर्ता सफलतापूर्वक बनाया गया है. जैसा कि नीचे दी गई छवि में दिखाया गया है, उपयोगकर्ता का एआरएन सहेजें। इस IAM उपयोगकर्ता का ARN इस ट्यूटोरियल में बाद में उपयोग किया जाएगा। वर्तमान में, इस IAM उपयोगकर्ता के साथ कोई अनुमतियाँ संबद्ध नहीं हैं:


और पढ़ें:

चरण 2: एक्सेस कुंजी बनाएं

AWS में, प्रत्येक उपयोगकर्ता को लॉगिन के लिए एक्सेस कुंजियों की एक जोड़ी सौंपी जाती है। इस उपयोगकर्ता के लिए एक्सेस कुंजियाँ बनाने के लिए, उसे निम्नलिखित कमांड प्रदान करें:

एडब्ल्यूएस मैं क्रिएट-एक्सेस-की हूं --उपयोगकर्ता नाम प्रोफ़ाइल-उपयोगकर्ता


यह कमांड एक्सेस कुंजियों का एक सेट लौटाता है। बचाना AccessKeyId और गुप्त पहुँचकुंजी क्योंकि AWS खाते में लॉग इन करते समय इसकी आवश्यकता होगी:


अब यदि हम इन AccessKeyId, और SecretAccessKey का उपयोग करके AWS CLI में लॉग इन करते हैं, और किसी भी संसाधन तक पहुँचते हैं। S3 बाल्टी, 'पहुंच अस्वीकृत' त्रुटि घटित होगी. ऐसा इसलिए है क्योंकि वर्तमान में IAM उपयोगकर्ता से जुड़ी कोई अनुमति नहीं है। AWS CLI में लॉग इन करने के लिए, निम्नलिखित कमांड का उपयोग करें और पहले बनाई गई एक्सेस कुंजी आईडी और गुप्त एक्सेस कुंजी प्रदान करें:

एडब्ल्यूएस कॉन्फ़िगर करें --प्रोफ़ाइल प्रोफ़ाइल-उपयोगकर्ता


प्रतिस्थापित करें 'प्रोफ़ाइल-उपयोगकर्ता' उस IAM उपयोगकर्ता नाम के साथ जो आपने उपयोगकर्ता बनाते समय प्रदान किया था।

यहां, हमने IAM उपयोगकर्ता के रूप में AWS CLI में सफलतापूर्वक लॉग इन किया है:


यह सत्यापित करने के लिए कि क्या इस उपयोगकर्ता के पास S3 बकेट के लिए कोई रीड-ओनली अनुमति है, सीएलआई को निम्नलिखित कमांड प्रदान करें:

एडब्ल्यूएस s3 रास --प्रोफ़ाइल प्रोफ़ाइल-उपयोगकर्ता


प्रोफ़ाइल-उपयोगकर्ता को उस IAM उपयोगकर्ता नाम से बदलें जो आपने उपयोगकर्ता बनाते समय प्रदान किया था।

चूँकि इस उपयोगकर्ता को रूट उपयोगकर्ता द्वारा कोई अनुमति नहीं दी गई है, इसका परिणाम यह होगा कि ' पहुंच अस्वीकृत ' गलती:

चरण 3: एक ट्रस्ट नीति और IAM भूमिका बनाएं

एक विश्वास नीति यह निर्धारित करती है कि कोई उपयोगकर्ता या AWS संसाधन भूमिका संभालने और अनुमतियाँ प्राप्त करने के लिए एक विश्वसनीय इकाई है या नहीं। यह विश्वास संबंध अनुमति नीति के भीतर IAM उपयोगकर्ता या AWS संसाधन के ARN को निर्दिष्ट करके बनाया गया है।

IAM के भीतर एक विश्वास नीति बनाने के लिए, CLI को निम्नलिखित आदेश प्रदान करें:

विंडोज के लिए

नोटपैड ट्रस्ट-पॉलिसी.जेसन


प्रतिस्थापित करें Trust-policy.json पॉलिसी के लिए आपकी पसंद के नाम के साथ।

लिनक्स ओएस के लिए

क्योंकि ट्रस्ट-भूमिका-नीति.json


प्रतिस्थापित करें Trust-policy.json पॉलिसी के लिए आपकी पसंद के नाम के साथ।

उपयोगकर्ता अपनी पसंद के किसी भी टेक्स्ट एडिटर का उपयोग कर सकते हैं। इस डेमो के लिए, हम नोटपैड का उपयोग कर रहे हैं:


इससे ट्रस्ट नीति बनाने के लिए नोटपैड खुल जाएगा। निम्नलिखित नीति को नोटपैड में चिपकाएँ और दबाएँ 'CTRL + S' परिवर्तनों को लागू करने और सहेजने के लिए कीबोर्ड से:

{
'संस्करण' : '2012-10-17' ,
'कथन' : {
'प्रभाव' : 'अनुमति दें' ,
'प्रमुख' : {
'एडब्ल्यूएस' : 'arn:aws:iam::012345678910:उपयोगकर्ता/प्रोफ़ाइल-उपयोगकर्ता'
} ,
'कार्रवाई' : 'एसटीएस: भूमिका मान लें'
}
}


उपरोक्त नीति में: एडब्ल्यूएस: इस अनुभाग में पहले बनाए गए IAM उपयोगकर्ता के ARN के साथ 'arn:aws:iam::012345678910:user/policy-user' मान को बदलें।

नीति को नोटपैड में संपादित किया गया है:


इसके बाद, हम एक IAM भूमिका बनाएंगे और उपरोक्त ट्रस्ट नीति को इसमें संलग्न करेंगे। IAM भूमिका बनाने के लिए निम्नलिखित कमांड का उपयोग करें:

एडब्ल्यूएस मैं क्रिएट-रोल हूं --भूमिका का नाम मेरी भूमिका --मान लें-भूमिका-नीति-दस्तावेज़ फ़ाइल: // Trust-policy.json


उपर्युक्त आदेश में:

    • -भूमिका का नाम: प्रतिस्थापित करें 'मेरी भूमिका' अपनी पसंद के IAM भूमिका नाम के साथ।
    • –मान लें-भूमिका-नीति-दस्तावेज़: इस फ़ील्ड में, शब्द बदलें 'भरोसा-नीति.json' आपकी IAM ट्रस्ट पॉलिसी के नाम के साथ

IAM भूमिका सफलतापूर्वक बनाई गई है. IAM भूमिका सहेजें. निम्नलिखित छवि में हाइलाइट किए गए अनुसार IAM भूमिका का ARN सहेजें। इस ARN का उपयोग उपयोगकर्ता की प्रोफ़ाइल को कॉन्फ़िगर करते समय किया जाएगा:


IAM से जुड़ी विश्वास नीति यह पहचानती है कि भूमिका संभालने के लिए उपयोगकर्ता पर भरोसा किया गया है या नहीं। अनुमति नीति यह निर्धारित करती है कि IAM भूमिका के पास AWS सेवाओं के साथ एक निश्चित कार्रवाई करने के लिए आवश्यक अनुमति है या नहीं।

चूँकि ट्रस्ट नीति को IAM भूमिका से जोड़ा गया है, अगला कदम अनुमति नीति को IAM भूमिका से जोड़ना है। IAM भूमिका में अनुमति नीति संलग्न करने के लिए नीचे उल्लिखित कमांड का उपयोग किया जाएगा:

एडब्ल्यूएस मैं अटैच-रोल-पॉलिसी हूं --भूमिका का नाम मेरी भूमिका --नीति-अर्न 'arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess'


यहां, अनुमति नीति को सीएलआई के माध्यम से आईएएम भूमिका से जोड़ा गया है:

चरण 4: प्रोफ़ाइल कॉन्फ़िगर करें

उपयोगकर्ता को यह भूमिका निभाने के लिए, हम पहले इस प्रोफ़ाइल को AWS की साख के भीतर कॉन्फ़िगर करेंगे। इन अस्थायी क्रेडेंशियल्स को संलग्न करने के लिए, निम्नलिखित आदेश प्रदान करें:

नोटपैड~ / .aws / कॉन्फ़िग


बोनस टिप: नोटपैड में 'पथ निर्दिष्ट नहीं है' का समाधान करें

कॉन्फ़िगरेशन फ़ाइल में AWS CLI की [डिफ़ॉल्ट] सेटिंग होगी। हालाँकि, यदि नोटपैड 'सिस्टम निर्दिष्ट पथ नहीं ढूँढ सकता' प्रदर्शित करता है, तो नीचे उल्लिखित कमांड दर्ज करें:

नोटपैड .aws / कॉन्फ़िग


Linux उपयोगकर्ता इसका उपयोग कर सकते हैं 'क्योंकि' प्रोफ़ाइल कॉन्फ़िगर करने के लिए संपादक. उपयोगकर्ता स्थानीय मशीन में AWS की कॉन्फ़िग फ़ाइल खोलने के लिए अपनी पसंद के किसी भी संपादक का उपयोग कर सकते हैं:


नोटपैड में खोली गई कॉन्फ़िग फ़ाइल में, निम्नलिखित परिवर्तन संपादित करें:

[ प्रोफ़ाइल प्रोफ़ाइल-उपयोगकर्ता ]
भूमिका_अर्न = arn:aws:iam::012345678910:भूमिका / मेरी भूमिका
source_profile =प्रोफ़ाइल-उपयोगकर्ता


उपरोक्त स्निपेट में:

    • भूमिका_अर्न: मान 'arn:aws:iam::012345678910:role/myrole' को IAM भूमिका के ARN से बदलें।
    • स्रोत_प्रोफ़ाइल: इस फ़ील्ड में, उस IAM उपयोगकर्ता का नाम प्रदान करें जो इस पद्धति के चरण 1 में बनाया गया था।

आवश्यक परिवर्तन करने के बाद दबाएँ 'CTRL + S' परिवर्तनों को लागू करने और सहेजने के लिए कीबोर्ड से:


अब, यह सत्यापित करने के लिए कि उपयोगकर्ता अब S3 बकेट को सूचीबद्ध कर सकता है या नहीं, CLI को निम्नलिखित कमांड प्रदान करें:

एडब्ल्यूएस s3 रास --प्रोफ़ाइल प्रोफ़ाइल-उपयोगकर्ता


उपरोक्त आदेश में: -प्रोफ़ाइल-उपयोगकर्ता: इस फ़ील्ड में, 'प्रोफ़ाइल-उपयोग' मान को उस नाम से बदलें जिसे आपने कॉन्फ़िगरेशन फ़ाइल में निर्दिष्ट किया है।

जैसा कि हमने कॉन्फ़िगरेशन फ़ाइल के भीतर 'प्रोफ़ाइल-उपयोगकर्ता' निर्दिष्ट किया है, इसलिए, हम सीएलआई में कमांड के साथ उसी नाम का उपयोग करेंगे। पहले उपयोगकर्ता AWS की S3 सेवा तक पहुँचने में सक्षम नहीं था क्योंकि उसे कोई अनुमति नहीं दी गई थी। IAM भूमिका के पास S3 बकेट की 'ReadOnlyAccess' की अनुमति है और इसलिए, इस भूमिका को मानकर, उपयोगकर्ता S3 डैशबोर्ड से बकेट को सूचीबद्ध कर सकता है:


ट्यूटोरियल की इस पद्धति से बस इतना ही।

विधि 3: एमएफए (मल्टी-फैक्टर प्रमाणीकरण) का उपयोग करना

मल्टी-फैक्टर प्रमाणीकरण को सक्षम करके, उपयोगकर्ता अपने खाते में सुरक्षा की एक अतिरिक्त परत कॉन्फ़िगर कर सकता है। एमएफए सक्षम होने पर, अनधिकृत उपयोगकर्ता किसी उपयोगकर्ता के खाते तक नहीं पहुंच सकते, भले ही वे पासवर्ड और उपयोगकर्ता नाम प्रदान करते हों। एमएफए छह अंकों का कोड है जो खाते में लॉग इन करने के लिए आवश्यक है। बहु-कारक प्रमाणीकरण के बारे में अधिक जानने के लिए, इस लेख को देखें:

सीएलआई के माध्यम से एमएफए के साथ भूमिका ग्रहण करने के चरण निम्नलिखित हैं:

चरण 1: एक IAM उपयोगकर्ता बनाएं और MFA सक्षम करें

इस चरण के लिए, उपयोगकर्ता या तो उपयोगकर्ता बनाने के लिए सीएलआई का उपयोग कर सकता है या एडब्ल्यूएस प्रबंधन कंसोल तक पहुंच सकता है। निम्नलिखित कमांड का उपयोग करके रूट उपयोगकर्ता खाते में लॉग इन करें:

एडब्ल्यूएस कॉन्फ़िगर करें


कमांड का आउटपुट इस प्रकार दिया गया है:


उपयोगकर्ता बनाने के लिए, सीएलआई को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस मैं क्रिएट-यूजर हूं --उपयोगकर्ता नाम एमएफए-उपयोगकर्ता


उपरोक्त आदेश में: -उपयोगकर्ता नाम: प्रतिस्थापित करें 'एमएफए-उपयोगकर्ता' अपनी पसंद के IAM उपयोगकर्ता नाम के साथ।

उपयोगकर्ता सफलतापूर्वक बनाया गया है. उपयोगकर्ता का एआरएन सहेजें क्योंकि इस अनुभाग में बाद में इसकी आवश्यकता होगी। वर्तमान में, इस उपयोगकर्ता को कोई अनुमति नहीं दी गई है:


एमएफए को सक्षम करने के लिए, एडब्ल्यूएस प्रबंधन कंसोल पर जाएं और आईएएम सेवा खोजें। प्रदर्शित परिणामों में से इस पर क्लिक करें:


IAM सेवा के बाएँ नेविगेशन फलक से उपयोगकर्ता विकल्प पर क्लिक करें। उपयोगकर्ता डैशबोर्ड से, एमएफए को कॉन्फ़िगर करने के लिए उपयोगकर्ता नाम पर क्लिक करें:


अगले इंटरफ़ेस पर, टैप करें 'सुरक्षा प्रमाण पत्र' विकल्प:


नीचे स्क्रॉल करें बहु-कारक प्रमाणीकरण अनुभाग और क्लिक करें 'एमएफए डिवाइस असाइन करें' बटन:


प्रदान करें एक सार्थक नाम में डिवाइस का नाम प्रदर्शित इंटरफ़ेस पर टेक्स्ट फ़ील्ड:


एमएफए डिवाइस अनुभाग तक नीचे स्क्रॉल करें। उपयोगकर्ता को एमएफए को सक्षम करने के लिए विभिन्न विकल्पों के साथ प्रस्तुत किया जाता है जैसे कि क्यूआर कोड को स्कैन करके, सुरक्षा कुंजी या हार्डवेयर टीओटीपी टोकन के माध्यम से। इस डेमो के लिए, का चयन करें 'प्रमाणक ऐप' विकल्प:


थपथपाएं 'अगला' आगे बढ़ने के लिए इंटरफ़ेस के नीचे बटन:


क्लिक करें 'क्यूआर कोड दिखाएँ' जैसा कि नीचे दी गई छवि में दिखाया गया है:


लॉन्च करें QR कोड को स्कैन करने के लिए अपने मोबाइल या लैपटॉप पर एप्लिकेशन। थपथपाएं '+' सिमेंटेक वीआईपी इंटरफ़ेस से विकल्प:


प्ले स्टोर पर Symantec VIP को VIP Access नाम दिया गया है।

सिमेंटेक वीआईपी के अगले इंटरफ़ेस पर, क्लिक करें स्कैन क्यू आर कोड इंटरफ़ेस के नीचे बटन:


AWS MFA से QR कोड को स्कैन करें प्रमाणक का ऐप इंटरफ़ेस प्रदर्शित. यह कोड कोड की एक श्रृंखला उत्पन्न करेगा जो IAM उपयोगकर्ता के कंसोल में लॉग इन करने के लिए आवश्यक होगी:


सिमेंटेक वीआईपी ऐप जेनरेट होगा छह अंकों का ओटीपी QR कोड स्कैन करने के बाद. ये कोड बाद में आते रहेंगे 30 सेकंड . नीचे दिया गया स्क्रीनशॉट जेनरेट किए गए दो कोड दिखाता है:


को कोड प्रदान करें एमएफए कोड 1 और एमएफए कोड 2 एमएफए के ऑथेंटिकेटर ऐप इंटरफ़ेस पर टेक्स्ट-फ़ील्ड। क्लिक करें 'एमएफए जोड़ें' कार्यक्षमता को सक्षम करने के लिए बाद में बटन:


IAM उपयोगकर्ता के लिए MFA सफलतापूर्वक सक्षम कर दिया गया है। इसे इसके द्वारा सत्यापित किया जा सकता है 'बहु-कारक प्रमाणीकरण (एमएफए)' का अनुभाग 'सुरक्षा प्रमाण पत्र' का टैब आईएएम उपयोगकर्ता . इस अनुभाग से, पहचानकर्ता का मान सहेजें क्योंकि भूमिका निभाते समय इसकी आवश्यकता होगी:

चरण 2: उपयोगकर्ता के साथ पॉलिसी संलग्न करें

किसी उपयोगकर्ता को कोई भूमिका निभाने के लिए, उपयोगकर्ता को यह निर्धारित करने के लिए IAM भूमिका सूचीबद्ध करने में सक्षम होना चाहिए कि कौन सी भूमिका निभानी है और भूमिका संभालने की अनुमति है। उपयोगकर्ता को आवश्यक अनुमति से लैस करने के लिए, अनुसरण करें इस ट्यूटोरियल में विधि 1 का

चरण 3: विश्वास नीति और IAM भूमिका बनाएँ

अगला कदम यह निर्धारित करने के लिए एक ट्रस्ट नीति बनाना है कि उपयोगकर्ता एक विश्वसनीय इकाई है या नहीं। यह ट्रस्ट नीति तब IAM भूमिका से जुड़ी होगी। ट्रस्ट नीति और IAM भूमिका बनाने के लिए, कमांड प्रॉम्प्ट पर जाएँ और उसका पालन करें इस आलेख में विधि 1 का।

चरण 4: एक एक्सेस कुंजी बनाएं

उपयोगकर्ता को अधिकृत और प्रमाणित करने के लिए, AWS प्लेटफ़ॉर्म पर विश्व स्तर पर अद्वितीय एक्सेस कुंजियों की एक जोड़ी तैयार की जाती है। इस कुंजी जोड़े का उपयोग AWS खाते में लॉगिन के समय किया जाता है। IAM उपयोगकर्ता के लिए एक्सेस कुंजी बनाने के लिए, इसका अनुसरण करें इस आलेख में विधि 1 का.

चरण 5: क्रेडेंशियल कॉन्फ़िगर करें

AWS उपयोगकर्ता केवल AWS संसाधनों और सेवाओं तक पहुंच सकता है यदि क्रेडेंशियल सही ढंग से कॉन्फ़िगर किए गए हों। विधि के इस खंड में, हम कमांड लाइन इंटरफ़ेस को एक्सेस कुंजी और गुप्त एक्सेस कुंजी प्रदान करके IAM उपयोगकर्ता की साख को कॉन्फ़िगर करेंगे। इस प्रयोजन के लिए, का पालन करें इस ट्यूटोरियल की विधि 1 का।

चरण 6: आईएएम भूमिका ग्रहण करें

IAM भूमिका को सफलतापूर्वक संलग्न करने और ट्रस्ट नीति को लागू करने के बाद, उपयोगकर्ता अब IAM भूमिका ग्रहण कर सकता है। इस प्रयोजन के लिए, सीएलआई को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस मैं क्रिएट-एक्सेस-की हूं --उपयोगकर्ता नाम एमएफए-उपयोगकर्ता


यहां IAM उपयोगकर्ता के लिए कुंजी सफलतापूर्वक बनाई गई है। AccessKeyId और SecretAccessKey को सहेजें क्योंकि AWS खाते में लॉग इन करने के लिए उनकी आवश्यकता होगी:


अगला कदम AWS CLI के भीतर एक्सेस कुंजियों को कॉन्फ़िगर करना है। सीएलआई को कॉन्फ़िगर करने के लिए नीचे दिए गए कमांड का उपयोग करें:

एडब्ल्यूएस कॉन्फ़िगर करें


कॉन्फ़िगरेशन के लिए सीएलआई को एक्सेस कुंजी और गुप्त एक्सेस कुंजी प्रदान करें:


यह सत्यापित करने के लिए कि क्या IAM उपयोगकर्ता ने AWS CLI में लॉग इन किया है, निम्नलिखित कमांड का उपयोग करें:

एडब्ल्यूएस एसटीएस गेट-कॉलर-पहचान


कमांड का आउटपुट निम्नानुसार दिया गया है जो इंगित करता है कि उपयोगकर्ता ने AWS कंसोल में सफलतापूर्वक लॉग इन किया है:


उपयोगकर्ता के पास AWS खाते में IAM भूमिकाओं को सूचीबद्ध करने की अनुमति है। IAM भूमिकाओं को सूचीबद्ध करने के लिए नीचे दिए गए कमांड का उपयोग किया जाता है:

aws iam सूची-भूमिकाएँ --सवाल 'भूमिकाएं[?भूमिकानाम == 'एमएफए-भूमिका']।[भूमिकानाम, अर्न]


उपरोक्त आदेश में: भूमिका का नाम: इस फ़ील्ड में, मान 'mfa-role' को अपनी IAM भूमिका के नाम से बदलें।

कमांड का आउटपुट इस प्रकार दिया गया है:


एमएफए के साथ आईएएम भूमिका ग्रहण करने के लिए, सीरियल नंबर और टोकन कोड जैसे अतिरिक्त मापदंडों के साथ भूमिका ग्रहण कमांड का उपयोग करें। सीएलआई को निम्नलिखित आदेश प्रदान करें:

एडब्ल्यूएस एसटीएस भूमिका ग्रहण करें --भूमिका-अर्न 'arn:aws:iam::123456789012:भूमिका/एम-भूमिका' --भूमिका-सत्र-नाम AWSCLI-सत्र --क्रम संख्या 'arn:aws:iam::012345678910:mfa/admindevice' --टोकन कोड '123456'


उपरोक्त आदेश में:

    • –भूमिका-अर्न: इस फ़ील्ड के मान को अपनी IAM भूमिका के ARN से बदलें।
    • –भूमिका-सत्र-नाम: इस फ़ील्ड में, उपयोगकर्ता अपनी पसंद का कोई भी सत्र नाम प्रदान कर सकता है।
    • -क्रम संख्या: इस फ़ील्ड के मान को पहले सहेजे गए एमएफए इंटरफ़ेस से पहचानकर्ता मान से बदलें।
    • -टोकन कोड: इस मान को सिमेंटेक वीआईपी इंटरफ़ेस में प्रदर्शित वर्तमान कोड द्वारा प्रतिस्थापित किया जाना है।

सिमेंटेक वीआईपी में दिखाया गया वर्तमान कोड इस प्रकार दिया गया है। कमांड के -टोकन-कोड मान में समान कोड का उपयोग किया जाएगा:


कमांड के आउटपुट में अस्थायी क्रेडेंशियल्स जैसे सत्र टोकन, एक्सेस कुंजी, गुप्त एक्सेस कुंजी इत्यादि शामिल होंगे:

चरण 7: पर्यावरण चर कॉन्फ़िगर करें

एक्सेस कुंजियाँ और लौटाए गए सत्र टोकन का उपयोग अब सत्र-आधारित लॉगिन स्थापित करने और भूमिका ग्रहण करने के लिए किया जाएगा। पर्यावरण को कॉन्फ़िगर करने के लिए विस्तृत कार्यान्वयन पर चर्चा की गई है विधि 1 का.

अंतिम विचार

सीएलआई का उपयोग करके भूमिका ग्रहण करने के लिए, तीन विधियाँ हैं, अर्थात् एसटीएस (सुरक्षा टोकन सेवा), -प्रोफ़ाइल पैरामीटर, या एमएफए (मल्टी-फैक्टर प्रमाणीकरण) के माध्यम से। किसी उपयोगकर्ता को कोई भूमिका निभाने के लिए, पहले एक ट्रस्ट नीति स्थापित करनी होगी। यह विश्वास नीति निर्धारित करती है कि उपयोगकर्ता एक विश्वसनीय इकाई है या नहीं। यह कार्यक्षमता आवश्यक है क्योंकि यह आईटी विशेषज्ञों और व्यक्तियों की सुरक्षा चिंताओं का समाधान करती है। इसके अलावा, उपयोगकर्ता केवल तभी भूमिका निभा सकता है जब वह आवश्यक अनुमतियों से सुसज्जित हो।

जब कोई उपयोगकर्ता AWS में भूमिका ग्रहण करता है, तो उपयोगकर्ता को वांछित अनुमतियों के साथ सीमित समय तक पहुंच प्रदान करने के लिए एक सत्र-आधारित लॉगिन बनाया जाता है। एक टोकन उत्पन्न होता है जो एक विशिष्ट समय के बाद समाप्त हो जाता है और इस प्रकार, उपयोगकर्ता अब AWS संसाधनों के साथ प्रशासनिक कार्य नहीं कर सकता है। यह आलेख AWS CLI में भूमिका निभाने के लिए तीन तरीकों का व्यावहारिक कार्यान्वयन प्रदान करता है।