AWS CLI- র মাধ্যমে চালু হওয়া একটি অ্যামাজন ইসি 2 উদাহরণের জন্য আইএএম ভূমিকা কীভাবে নির্দিষ্ট করবেন?


20

আমি একটি আমাজন ইসি 2 ইনস্ট্যান্স চালু করার জন্য "অ্যাউস ইক 2 রান-ইনস্ট্যান্স" কমান্ডটি ব্যবহার করব (এডাব্লুএস কমান্ড লাইন ইন্টারফেস ( সি এল এল ) থেকে) । আমি যে ইসি 2 চালু করছি তার জন্য আমি আইএএম ভূমিকা সেট করতে চাই । আইএএম ভূমিকাটি কনফিগার করা আছে এবং এডাব্লুএস ওয়েব ইউআই থেকে কোনও উদাহরণ চালু করার সময় আমি এটি সফলভাবে ব্যবহার করতে পারি। তবে আমি যখন এই আদেশটি এবং "--iam-উদাহরণ-প্রোফাইল" বিকল্পটি ব্যবহার করে এটি করার চেষ্টা করি তখন এটি ব্যর্থ হয়। "Aws ec2 রান-ইনস্ট্যান্স সহায়তা" করা করায় মানটির জন্য আরন = এবং নাম = সাবফিল্ডগুলি দেখায়। যখন আমি "আওস আইএম তালিকা-উদাহরণ-প্রোফাইলগুলি" ব্যবহার করে আরনটিকে দেখার চেষ্টা করি তখন এটি ত্রুটি বার্তা দেয়:

ক্লায়েন্টের ত্রুটি (অ্যাক্সেসডেইনয়েড) দেখা দিয়েছে: ব্যবহারকারী: আরএন: আওস: এসটিএস :: এক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্স: অনুমান-ভূমিকা / শেল / আই -15c2766d সঞ্চালনের জন্য অনুমোদিত নয়: আইএএম: লিস্টআইনস্ট্যান্স প্রোফাইলে রিসোর্সে: আরএন: আওস: আইএএম :: এক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্স -profile /

(যেখানে এক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সটি আমার এডাব্লুএস 12-অঙ্কের অ্যাকাউন্ট নম্বর)

আমি ওয়েব ইউআইয়ের মাধ্যমে আরন স্ট্রিংয়ের সন্ধান করলাম এবং এটি "--iam-উদাহরণ-প্রোফাইল অর্ন = আরন: আওস: আইএএম :: এক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্সএক্স: ইনস্ট্যান্স-প্রোফাইল / শেল" রান-ইনস্ট্যান্স কমান্ডের মাধ্যমে ব্যবহার করেছি এবং এটি ব্যর্থ হয়েছে :

একটি ক্লায়েন্ট ত্রুটি (অননুমোদিতভাবে অপারেশন) ঘটেছে: আপনি এই ক্রিয়াটি চালানোর জন্য অনুমোদিত নন।

আমি যদি পুরোপুরি "--iam-উদাহরণ-প্রোফাইল" বিকল্পটি ছেড়ে দিই, উদাহরণটি চালু হবে তবে এতে আমার প্রয়োজনীয় আইএএম রোল সেটিংস থাকবে না। সুতরাং অনুমতিটি "--iam-উদাহরণ-প্রোফাইল" ব্যবহার করে বা আইএএম ডেটা অ্যাক্সেস করার কিছু আছে বলে মনে হচ্ছে। আমি ডাব্লুএস গ্ল্যাচগুলির ক্ষেত্রে বেশ কয়েকবার পুনরাবৃত্তি করেছি (তারা কখনও কখনও ঘটে থাকে) এবং কোনও সাফল্যও পায় না।

আমি সন্দেহ করেছিলাম যে সম্ভবত কোনও বিধিনিষেধ রয়েছে যে আইএএম ভূমিকা সহ একটি উদাহরণকে আরও শক্তিশালী আইএএম ভূমিকা সহ একটি উদাহরণ চালু করার অনুমতি নেই। তবে এই ক্ষেত্রে, আমি যে কমান্ডটি কমান্ডটি করছি তার একই আইএএম ভূমিকা রয়েছে যা আমি ব্যবহার করার চেষ্টা করছি। নাম "শেল" (যদিও আমি আরও একটি ব্যবহার করার চেষ্টা করেছি, ভাগ্য নেই)।

  • আইএএম ভূমিকা সেট করা এমনকি কোনও উদাহরণ থেকেও অনুমোদিত নয় (এর আইএএম ভূমিকা শংসাপত্রের মাধ্যমে)?

  • আইএমএল রোলগুলি ব্যবহার করার জন্য কি কেবল কোনও সরল উদাহরণ চালু করার জন্য প্রয়োজনীয় কিছু উচ্চতর আইএএম ভূমিকার অনুমতি প্রয়োজন?

  • "--Iam-উদাহরণ-প্রোফাইল" কি আইএএম ভূমিকা উল্লেখ করার উপযুক্ত উপায়?

  • আমার কি আরন স্ট্রিংয়ের একটি উপসেট ব্যবহার করা বা অন্য কোনও উপায়ে ফর্ম্যাট করা দরকার?

  • এমন কোনও আইএএম ভূমিকা সেটআপ করা সম্ভব যা কোনও আইএএম রোল অ্যাক্সেস করতে পারে (সম্ভবত "সুপার রুট আইএএম" ... এই নামটি তৈরি করে)?

এফওয়াইআই, সমস্ত কিছুতে উদাহরণস্বরূপ লিনাক্স চলমান থাকে। এছাড়াও, আমি এই সমস্ত কিছু চালিয়ে যাচ্ছি কারণ আমি আমার ডেস্কটপে এই সরঞ্জামগুলি ইনস্টল করতে পারি নি। এটি এবং আমি এখানে আইডাব্লুএসের পরামর্শ অনুসারে কোনও আইডাব্লুএস স্টোরেজে আমার আইএএম ব্যবহারকারীর শংসাপত্রগুলি রাখতে চাই না ।

উত্তর পরে:

আমি "পাওয়ার ইউজারএকসেস" (বনাম "অ্যাডমিনিস্ট্রেটর অ্যাক্সেস") এর প্রবর্তন করার অনুমতিটির কথা উল্লেখ করিনি কারণ আমি প্রশ্নটি জিজ্ঞাসা করার সময় অতিরিক্ত অ্যাক্সেসের প্রয়োজন বুঝতে পারি নি। আমি ধরে নিয়েছিলাম যে আইএএম ভূমিকাটি লঞ্চের সাথে সংযুক্ত "তথ্য"। তবে এটি আসলে এর চেয়ে বেশি। এটি অনুমতি প্রদান।

উত্তর:


23

হালনাগাদ

মাইক পোপ সম্পর্কে একটি চমৎকার নিবন্ধ প্রকাশিত হয়েছে IAM ভূমিকা (PassRole অনুমতি) সঙ্গে লঞ্চ EC2 দৃষ্টান্ত করতে অনুমতি দেওয়া উপর ডেস্কটপ AWS সিকিউরিটি ব্লগ , যা একটি দেখুন ডেস্কটপ AWS বিন্দু থেকে বিষয়ের ব্যাখ্যা করে।


প্রাথমিক উত্তর

স্কেপেরেনের উত্তর আংশিকভাবে সঠিক (+1), তবে কিছুটা নীচের মতো ভুল / বিভ্রান্তিকর (ব্যাখ্যাটি কোনও মন্তব্যের জন্য কিছুটা জটিল বলে মনে হচ্ছে, সুতরাং এই পৃথক উত্তর):

আইএএম ভূমিকা সহ একটি ইসি 2 ইভেন্ট চালু করতে আইএএম সুবিধাটিতে প্রশাসনিক প্রবেশাধিকার প্রয়োজন।

এটি যেমন সঠিক এবং অন্তর্নিহিত সমস্যার দিকে ইঙ্গিত করে তবে প্রয়োজনীয় প্রশাসনিক অনুমতিগুলি বরং সীমাবদ্ধ থাকে তাই নিম্নলিখিত উপসংহারে ...

আইএএমের ভূমিকা অনুমোদনের ভূমিকা পালন করার কারণে, স্পষ্টভাবে একটি সুরক্ষা সমস্যা সমাধান করা উচিত। আপনি চাইবেন না যে আইএএম এর ভূমিকাগুলি অনুমোদনের পরিমাণ বাড়ানোর মাধ্যম হয়ে উঠুক।

... কিছুটা বিভ্রান্তিমূলক, সম্ভাব্য সুরক্ষা ইস্যুটি সঠিকভাবে মোকাবেলা করা যেতে পারে। বিষয়টিকে হ'ল মঞ্জুরি অ্যাপ্লিকেশনগুলিতে সম্বোধন করা হয়েছে যা অ্যামাজন ইসি 2 ইনস্ট্যান্সগুলিতে অ্যাডাব্লুএস রিসোর্সে অ্যাক্সেসে চলে :

অ্যামাজন ইসি 2 উদাহরণগুলিতে চালিত অ্যাপ্লিকেশনগুলির শংসাপত্রাদি পরিচালনা করতে আপনি আইএএম রোলগুলি ব্যবহার করতে পারেন। আপনি যখন ভূমিকা ব্যবহার করেন, আপনাকে অ্যামাজন ইসি 2 উদাহরণগুলিতে AWS শংসাপত্রগুলি বিতরণ করতে হবে না। পরিবর্তে, আপনি যখন আমাজন ইসি 2 তে চালিত হন এবং অন্যান্য এডাব্লুএস সংস্থাগুলিতে কল করার সময় অ্যাপ্লিকেশনগুলির প্রয়োজনীয় অনুমতিগুলি নিয়ে আপনি একটি ভূমিকা তৈরি করতে পারেন। যখন বিকাশকারীরা একটি অ্যামাজন ইসি 2 ইনস্ট্যান্স চালু করে, তারা উদাহরণটির সাথে সংযুক্ত হওয়ার জন্য আপনার তৈরি করা ভূমিকাটি নির্দিষ্ট করতে পারে। উদাহরণস্বরূপ চলমান অ্যাপ্লিকেশনগুলি অনুরোধগুলিতে সাইন করতে ভূমিকা শংসাপত্রগুলি ব্যবহার করতে পারে।

এখন, হাতের ব্যবহারের ক্ষেত্রে উল্লিখিত বিকাশকারীগণ [যে] একটি অ্যামাজন ইসি 2 উদ্বোধন করেছেন বাস্তবে ইসি 2 উদাহরণ রয়েছে, যা স্কাইপ্রেইনের বর্ণিত 22 সুরক্ষা ইস্যুটি ধরা হয়েছে বলে মনে হয়। অ্যামাজন ইসি 2 এর সাথে ভূমিকা ব্যবহারের জন্য প্রয়োজনীয় অনুমতি বিভাগে নমুনা নীতি দ্বারা চিত্রিত হিসাবে এটি সত্যই ক্ষেত্রে নেই :

{
   "Version": "2012-10-17",
   "Statement": [{
      "Effect":"Allow",
      "Action":"iam:PassRole",
      "Resource":"*"
    },
    {
      "Effect":"Allow",
      "Action":"iam:ListInstanceProfiles",
      "Resource":"*"
    },
    {
      "Effect":"Allow",
      "Action":"ec2:*",
      "Resource":"*"
    }]
}

তাই iam:PassRoleআসলে শুধুমাত্র IAM অনুমতি প্রয়োজন, এবং যখন প্রশাসনিক প্রকৃতির টেকনিক্যালি, এই নয় যে পর্যন্ত পৌঁছনো - অবশ্যই, উপরে নমুনা নীতি এখনও তালিকা মাধ্যমে এবং পালাক্রমে কোনো উপলব্ধ ভূমিকা ক্ষণস্থায়ী অনুমতি ধাপে ধাপে বৃদ্ধি করা সম্ভব হবে, তবে হাতের ব্যবহারের ক্ষেত্রে কেবল সেই ভূমিকাগুলিই পছন্দ করে / নিরাপদ করে তা নির্দিষ্ট করেই এটি প্রতিরোধ করা যেতে পারে - এটি অ্যামাজন ইসি 2 উদাহরণগুলিতে (পাসরোল ব্যবহার করে) কোন ভূমিকাটি পাস করা যাবে তা সীমাবদ্ধকরণ বিভাগে বর্ণিত হয়েছে :

ব্যবহারকারীদের অ্যামাজন ইসি 2 তে এমন কোনও ভূমিকা পাস করা থেকে বিরত রাখতে আপনি পাসরোলের অনুমতি ব্যবহার করতে পারেন যা ইতিমধ্যে ব্যবহারকারীকে দেওয়া হয়েছে তার থেকেও বেশি অনুমতি পেয়েছে, এবং তারপরে সেই ভূমিকার জন্য উন্নত সুবিধাগুলির অধীনে অ্যাপ্লিকেশন চালাচ্ছে। ভূমিকা নীতিতে, পাসআরোল অ্যাকশনটিকে অনুমতি দিন এবং একটি সংস্থান নির্দিষ্ট করুন (যেমন আর্ন: আওস: আইএএম :: 111122223333: ভূমিকা / ec2Roles / *) কেবলমাত্র একটি নির্দিষ্ট ভূমিকা বা ভূমিকাগুলির সেটটি একটি আমাজন ইসি 2 উদাহরণে যেতে পারে indicate ।

সম্পর্কিত নমুনা নীতিটি হাতের ব্যবহারের ক্ষেত্রে হুবহু মিলে যায়, অর্থাত্ অ্যামাজন ইসি 2 এপিআই ব্যবহার করে একটি ভূমিকা সহ একটি উদাহরণ চালু করার অনুমতি দেয় :

{
  "Version": "2012-10-17",
  "Statement": [{
      "Effect":"Allow",
      "Action":"ec2:RunInstances",
      "Resource":"*"
    },
    {
      "Effect":"Allow",
      "Action":"iam:PassRole",
      "Resource":"arn:aws:iam::123456789012:role/Get-pics"
    }]
}

আইএম: পাসরোল সম্পর্কিত তথ্যের জন্য ধন্যবাদ Thanks এটি আমি আগে যা শিখেছি তার চেয়ে বেশি বিশদ, এটি এর মতো অনুমতিগুলি কনফিগার করে অনেক কিছু করতে পারে।
স্কেপেরেন

1

আইএএম ভূমিকা সহ একটি ইসি 2 ইভেন্ট চালু করতে আইএএম সুবিধাটিতে প্রশাসনিক প্রবেশাধিকার প্রয়োজন। নতুন প্রয়োগটির উদ্বোধনের কাজটির মতো একই ভূমিকা থাকা সত্ত্বেও এটি প্রযোজ্য। আমি যে উদাহরণটি থেকে চালু করছিলাম তার "পাওয়ারউসারআ্যাক্সেস" অনুমতি ছিল, যা আইএনএএম রোল অ্যাক্সেস নয়, একটি উদাহরণ চালু করার অনুমতি দিয়েছে। একবার আমি প্রবর্তন ইভেন্টে অনুমতিটি "অ্যাডমিনিস্ট্রেটরঅ্যাক্সেস" এ উন্নীত করি তখন এটি কার্যকর হয়েছিল।

আইএএমের ভূমিকা অনুমোদনের ভূমিকা পালন করার কারণে, স্পষ্টভাবে একটি সুরক্ষা সমস্যা সমাধান করা উচিত। আপনি চাইবেন না যে আইএএম এর ভূমিকাগুলি অনুমোদনের পরিমাণ বাড়ানোর মাধ্যম হয়ে উঠুক। তবে এর অর্থ হ'ল যে কোনও আইএএম ভূমিকা দেওয়ার জন্য, প্রবর্তনের ক্ষেত্রে অবশ্যই "অ্যাডমিনিস্ট্রেটরঅ্যাক্সেস" থাকতে হবে বা উদাহরণস্বরূপ ব্যবহারকারীর অ্যাক্সেস / সিক্রেট কীগুলি ব্যবহার করা উচিত (প্রস্তাবিত নয়), যা কোনও আইএএম ভূমিকা দেওয়ার অনুমতি দেয়।

উদ্বোধনটি করার অনুরোধ অনুসারে একই অনুমতি (একই আইএএম ভূমিকা) সহ একটি উদাহরণ চালু করতে সক্ষম হওয়াই দরকারী তবে ইসি 2 বা আইএএম এর এই স্তরের গ্রানুলারিটির কোনও ব্যবস্থা নেই, বা এটি নিরাপদে যাচাই করার উপায় নেই or ।


1
আপনার বিশ্লেষণ / অন্তর্নিহিত সমস্যাটি সঠিকভাবে বর্ণিত (+1), তবে আপনার সিদ্ধান্তগুলি কিছুটা সঠিক / বিভ্রান্তিকর - আমি আইএম দ্বারা সম্ভাব্য সুরক্ষা সমস্যাটি কীভাবে মোকাবেলা করা হয়েছে তা সঠিকভাবে ব্যাখ্যা করার জন্য আমি একটি পৃথক উত্তর যুক্ত করেছি ।
স্টিফেন ওপেল 23-23
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.