2012-11-25 12 views
6

मैं प्रबंधन कंसोल में आईएएम-भूमिका के साथ ec2-instance लॉन्च कर सकता हूं। लेकिन मैं पता नहीं है एडब्ल्यूएस-माणिक-sdkमैं आईएएम-रोल के साथ ec2-instance कैसे लॉन्च करूं?

iam-role " test"'s Policy is here 
    "Effect": "Allow", 
    "Action": "*", 
    "Resource": "*" 

यहाँ से iam-भूमिका के साथ EC2-उदाहरण के लांच करने के लिए कैसे परिणाम है:

/var/lib/gems/1.8/gems/aws-sdk-1.7.1/lib/aws/core/client.rb:318:in `return_or_raise': 
You are not authorized to perform iam:PassRole with arn:aws:iam::xxxxxxxxxxx:role/test 
(AWS::EC2::Errors::UnauthorizedOperation) 

उत्तर

9

क्रेडेंशियल आपके रूबी स्क्रिप्ट से प्रयोग कर रहे हैं 'परीक्षण' IAM भूमिका का उपयोग करके एक उदाहरण लॉन्च करने की अनुमति नहीं है। आप इस उपयोगकर्ता के लिए नीति को संशोधित करने, और यह अनुदान IAM की जरूरत है: PassRole अनुमति, जैसे:

{ 
    "Statement": [{ 
     "Effect":"Allow", 
     "Action":"ec2:RunInstances", 
     "Resource":"*" 
    }, 
    { 
     "Effect":"Allow", 
     "Action":"iam:PassRole", 
     "Resource":"arn:aws:iam::xxxxxxxxxxx:role/test" 
    }] 
} 

यह एक सुरक्षा सुविधा है - यह, IAM misconfigure को विशेषाधिकार वृद्धि की अनुमति देने के लिए संभव है तो एडब्ल्यूएस एक का उपयोग करता है " डिफ़ॉल्ट रूप से सुरक्षित "नीति।

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

{ 
     "Effect":"Allow", 
     "Action":"iam:PassRole", 
     "Resource":"*" 
    }] 

रेफरी: http://docs.amazonwebservices.com/IAM/latest/UserGuide/role-usecase-ec2app.html

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^