AWS Policy Syntax: Difference between revisions

From binaryoption
Jump to navigation Jump to search
Баннер1
(@pipegas_WP)
 
(No difference)

Latest revision as of 02:52, 28 April 2025

    1. AWS नीति सिंटैक्स: शुरुआती गाइड

परिचय

अमेज़ॅन वेब सर्विसेज (AWS) एक जटिल और शक्तिशाली क्लाउड कंप्यूटिंग प्लेटफॉर्म है। इसकी सुरक्षा और नियंत्रण सुनिश्चित करने के लिए, AWS नीतियों का उपयोग महत्वपूर्ण है। AWS नीतियाँ यह निर्धारित करती हैं कि आपके AWS संसाधनों तक किसकी पहुंच है और वे क्या कर सकते हैं। यह लेख शुरुआती लोगों के लिए AWS नीति सिंटैक्स को विस्तार से समझाएगा, ताकि वे अपनी AWS अवसंरचना को सुरक्षित और कुशलतापूर्वक प्रबंधित कर सकें। यह लेख AWS पहचान और अभिगम प्रबंधन (IAM) पर आधारित है और सुरक्षा सर्वोत्तम अभ्यास के सिद्धांतों का पालन करता है।

नीतियाँ क्या हैं?

AWS नीतियाँ JSON (जावास्क्रिप्ट ऑब्जेक्ट नोटेशन) प्रारूप में लिखी जाती हैं। ये दस्तावेज़ परिभाषित करते हैं कि एक IAM उपयोगकर्ता, IAM समूह, या IAM भूमिका को कौन सी क्रियाएँ करने की अनुमति है, किन संसाधनों पर, और किन शर्तों के तहत।

  • **नीति संरचना:** प्रत्येक नीति में एक या अधिक स्टेटमेंट होते हैं। प्रत्येक स्टेटमेंट में तीन मुख्य घटक होते हैं:
   *   **Effect:** यह निर्धारित करता है कि नीति अनुमति देती है (Allow) या अस्वीकार करती है (Deny) पहुंच।
   *   **Action:** यह उन विशिष्ट क्रियाओं को निर्दिष्ट करता है जिन्हें अनुमति या अस्वीकार किया जा रहा है। उदाहरण के लिए, `s3:GetObject` S3 बकेट से ऑब्जेक्ट प्राप्त करने की अनुमति देता है। AWS सेवा क्रियाएँ की पूरी सूची AWS दस्तावेज़ में उपलब्ध है।
   *   **Resource:** यह उन संसाधनों को निर्दिष्ट करता है जिन पर कार्रवाई लागू होती है। उदाहरण के लिए, एक विशिष्ट S3 बकेट या DynamoDB टेबल। AWS संसाधन नाम का उपयोग संसाधनों की पहचान करने के लिए किया जाता है।

JSON सिंटैक्स की मूल बातें

AWS नीतियों को समझने के लिए, JSON सिंटैक्स की बुनियादी समझ आवश्यक है। JSON डेटा को कुंजी-मूल्य जोड़े में संग्रहीत करता है।

  • **कुंजी (Key):** एक स्ट्रिंग जो डेटा के नाम का प्रतिनिधित्व करती है।
  • **मूल्य (Value):** कुंजी से जुड़ा डेटा। मूल्य स्ट्रिंग, संख्या, बूलियन, ऑब्जेक्ट या सरणी हो सकता है।
  • **ऑब्जेक्ट:** कुंजी-मूल्य जोड़े का एक संग्रह, कर्ली ब्रेसेस `{}` के भीतर संलग्न।
  • **सरणी:** मूल्यों का एक क्रमबद्ध संग्रह, स्क्वायर ब्रेकेट्स `[]` के भीतर संलग्न।

उदाहरण:

```json {

 "name": "John Doe",
 "age": 30,
 "isStudent": false,
 "address": {
   "street": "123 Main St",
   "city": "Anytown"
 },
 "hobbies": ["reading", "hiking", "coding"]

} ```

एक साधारण नीति उदाहरण

मान लीजिए कि आप एक IAM उपयोगकर्ता को केवल एक विशिष्ट S3 बकेट से ऑब्जेक्ट पढ़ने की अनुमति देना चाहते हैं। नीति इस प्रकार होगी:

```json {

 "Version": "2012-10-17",
 "Statement": [
   {
     "Effect": "Allow",
     "Action": "s3:GetObject",
     "Resource": "arn:aws:s3:::your-bucket-name/*"
   }
 ]

} ```

  • **Version:** नीति भाषा के संस्करण को निर्दिष्ट करता है। `2012-10-17` नवीनतम संस्करण है।
  • **Statement:** नीतियों का एक सरणी। एक नीति में कई स्टेटमेंट हो सकते हैं।
  • **Effect:** `Allow` निर्दिष्ट करता है कि उपयोगकर्ता को कार्रवाई करने की अनुमति है।
  • **Action:** `s3:GetObject` निर्दिष्ट करता है कि उपयोगकर्ता S3 बकेट से ऑब्जेक्ट पढ़ सकता है।
  • **Resource:** `arn:aws:s3:::your-bucket-name/*` निर्दिष्ट करता है कि यह अनुमति केवल `your-bucket-name` नामक S3 बकेट में मौजूद सभी ऑब्जेक्ट पर लागू होती है। `*` वाइल्डकार्ड का उपयोग सभी ऑब्जेक्ट को दर्शाने के लिए किया जाता है।

नीति तत्व

AWS नीतियों में उपयोग किए जाने वाले कुछ सामान्य तत्व इस प्रकार हैं:

नीति तत्व
यह निर्धारित करता है कि नीति अनुमति देती है (Allow) या अस्वीकार करती है (Deny) पहुंच। | उन विशिष्ट क्रियाओं को निर्दिष्ट करता है जिन्हें अनुमति या अस्वीकार किया जा रहा है। | उन संसाधनों को निर्दिष्ट करता है जिन पर कार्रवाई लागू होती है। | विशिष्ट शर्तों के तहत पहुंच को सीमित करने के लिए उपयोग किया जाता है। उदाहरण के लिए, केवल एक विशिष्ट IP पते से पहुंच की अनुमति देना। नीति शर्तें| उस इकाई को निर्दिष्ट करता है जिसे नीति लागू होती है। उदाहरण के लिए, एक IAM उपयोगकर्ता, समूह, या भूमिका। IAM प्रिंसिपल| विशिष्ट क्रियाओं को स्पष्ट रूप से अस्वीकार करने के लिए उपयोग किया जाता है। | विशिष्ट संसाधनों पर पहुंच को स्पष्ट रूप से अस्वीकार करने के लिए उपयोग किया जाता है। | नीति के अनुरोध ID को निर्दिष्ट करता है। | नीतियों का एक सरणी। एक नीति में कई स्टेटमेंट हो सकते हैं। |

नीति शर्तें

नीति शर्तें आपको विशिष्ट शर्तों के तहत पहुंच को सीमित करने की अनुमति देती हैं। उदाहरण के लिए:

  • **IP पते के आधार पर पहुंच:** केवल एक विशिष्ट IP पते या IP पते की श्रेणी से पहुंच की अनुमति देना।
  • **समय के आधार पर पहुंच:** केवल एक विशिष्ट समय अवधि के दौरान पहुंच की अनुमति देना।
  • **MFA के आधार पर पहुंच:** मल्टी-फैक्टर ऑथेंटिकेशन (MFA) का उपयोग करके प्रमाणित उपयोगकर्ताओं को ही पहुंच की अनुमति देना।
  • **स्रोत VPC के आधार पर पहुंच:** केवल एक विशिष्ट वर्चुअल प्राइवेट क्लाउड (VPC) से अनुरोधों की अनुमति देना।

उदाहरण:

```json {

 "Version": "2012-10-17",
 "Statement": [
   {
     "Effect": "Allow",
     "Action": "s3:GetObject",
     "Resource": "arn:aws:s3:::your-bucket-name/*",
     "Condition": {
       "IpAddress": {
         "aws:SourceIp": "203.0.113.0/24"
       }
     }
   }
 ]

} ```

यह नीति केवल 203.0.113.0/24 IP पते की श्रेणी से आने वाले अनुरोधों को `your-bucket-name` नामक S3 बकेट से ऑब्जेक्ट पढ़ने की अनुमति देती है।

नीति चर

AWS नीतियाँ नीति चर का समर्थन करती हैं, जो आपको नीति में गतिशील मानों का उपयोग करने की अनुमति देती हैं। उदाहरण के लिए:

  • `aws:userid`: IAM उपयोगकर्ता की ID।
  • `aws:sourceVpc`: अनुरोध का स्रोत VPC।
  • `aws:username`: IAM उपयोगकर्ता का उपयोगकर्ता नाम।
  • `aws:accountid`: AWS खाते की ID।

AWS प्रबंधित नीतियाँ बनाम कस्टम नीतियाँ

AWS दो प्रकार की नीतियाँ प्रदान करता है:

  • **AWS प्रबंधित नीतियाँ:** AWS द्वारा बनाई गई और प्रबंधित की जाती हैं। ये नीतियाँ सामान्य उपयोग के मामलों के लिए पूर्व-परिभाषित अनुमतियाँ प्रदान करती हैं। उदाहरण के लिए, `ReadOnlyAccess` नीति आपको सभी AWS सेवाओं को पढ़ने की अनुमति देती है। AWS प्रबंधित नीतियाँ
  • **कस्टम नीतियाँ:** आप अपनी विशिष्ट आवश्यकताओं के अनुरूप कस्टम नीतियाँ बना सकते हैं। ये नीतियाँ आपको अधिक बारीक नियंत्रण प्रदान करती हैं। कस्टम नीतियाँ

सर्वोत्तम अभ्यास

AWS नीतियों को बनाते समय निम्नलिखित सर्वोत्तम प्रथाओं का पालन करें:

  • **न्यूनतम विशेषाधिकार सिद्धांत का पालन करें:** उपयोगकर्ताओं को केवल उन अनुमतियों को दें जिनकी उन्हें अपना काम करने के लिए आवश्यकता है।
  • **स्पष्ट और संक्षिप्त नीतियाँ लिखें:** नीतियाँ समझने में आसान होनी चाहिए।
  • **नीतियों का नियमित रूप से ऑडिट करें:** सुनिश्चित करें कि नीतियाँ अभी भी प्रासंगिक हैं और आवश्यक अनुमतियाँ प्रदान करती हैं।
  • **AWS प्रबंधित नीतियों का उपयोग करें जब संभव हो:** AWS प्रबंधित नीतियाँ अक्सर अच्छी तरह से परीक्षण और सुरक्षित होती हैं।
  • **कस्टम नीतियों के लिए संस्करण नियंत्रण का उपयोग करें:** परिवर्तनों को ट्रैक करने और आवश्यकता पड़ने पर पिछले संस्करणों पर वापस जाने के लिए।
  • **नकारात्मक शर्तों का उपयोग सावधानी से करें:** नकारात्मक शर्तें नीतियों को जटिल बना सकती हैं और उन्हें डिबग करना मुश्किल बना सकती हैं।

नीति सिंटैक्स उदाहरण

यहाँ कुछ अतिरिक्त नीति सिंटैक्स उदाहरण दिए गए हैं:

  • **DynamoDB टेबल तक पहुंच:**

```json {

 "Version": "2012-10-17",
 "Statement": [
   {
     "Effect": "Allow",
     "Action": [
       "dynamodb:GetItem",
       "dynamodb:PutItem",
       "dynamodb:UpdateItem",
       "dynamodb:DeleteItem"
     ],
     "Resource": "arn:aws:dynamodb:your-region:your-account-id:table/your-table-name"
   }
 ]

} ```

  • **EC2 इंस्टेंस शुरू और बंद करने की अनुमति:**

```json {

 "Version": "2012-10-17",
 "Statement": [
   {
     "Effect": "Allow",
     "Action": [
       "ec2:StartInstances",
       "ec2:StopInstances"
     ],
     "Resource": "arn:aws:ec2:your-region:your-account-id:instance/*"
   }
 ]

} ```

  • **CloudWatch लॉग तक पहुंच:**

```json {

 "Version": "2012-10-17",
 "Statement": [
   {
     "Effect": "Allow",
     "Action": [
       "logs:CreateLogGroup",
       "logs:CreateLogStream",
       "logs:PutLogEvents"
     ],
     "Resource": "arn:aws:logs:your-region:your-account-id:log-group:/your-log-group-name/*"
   }
 ]

} ```

निष्कर्ष

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

आगे की पढ़ाई

AWS सुरक्षा IAM भूमिकाएँ IAM उपयोगकर्ता AWS संसाधन सुरक्षा नीतियाँ क्लाउड सुरक्षा डेटा सुरक्षा प्रवेश नियंत्रण अनुमति प्रबंधन JSON डेटा प्रारूप AWS सेवाएँ AWS खाता संरचना AWS क्षेत्र AWS VPC AWS S3 AWS DynamoDB AWS EC2 AWS CloudWatch सुरक्षा ऑडिट अनुपालन आवश्यकताएँ बाइनरी विकल्प रणनीतियाँ तकनीकी विश्लेषण वॉल्यूम विश्लेषण जोखिम प्रबंधन

अभी ट्रेडिंग शुरू करें

IQ Option पर रजिस्टर करें (न्यूनतम जमा $10) Pocket Option में खाता खोलें (न्यूनतम जमा $5)

हमारे समुदाय में शामिल हों

हमारे Telegram चैनल @strategybin से जुड़ें और प्राप्त करें: ✓ दैनिक ट्रेडिंग सिग्नल ✓ विशेष रणनीति विश्लेषण ✓ बाजार की प्रवृत्ति पर अलर्ट ✓ शुरुआती के लिए शिक्षण सामग्री

Баннер