2 पॉइंट द्वारा GN⁺ 2024-06-02 | 1 टिप्पणियां | WhatsApp पर शेयर करें

AWS S3 bucket encryption उतना सरल नहीं है जितना लगता है

S3 encryption के विकल्प

  • server-side encryption (SSE-S3): AWS द्वारा प्रबंधित keys का उपयोग करके डेटा को encrypt करता है.
  • server-side encryption (SSE-KMS): AWS Key Management Service (KMS) का उपयोग करके डेटा को encrypt करता है.
  • server-side encryption (SSE-C): उपयोगकर्ता द्वारा प्रदान की गई keys का उपयोग करके डेटा को encrypt करता है.
  • client-side encryption: उपयोगकर्ता डेटा upload करने से पहले उसे स्वयं encrypt करता है.

encryption और access control के बीच अंतर

  • encryption: डेटा की सुरक्षा के लिए उसे परिवर्तित करने की प्रक्रिया.
  • access control: वह policy जो तय करती है कि डेटा तक किसकी पहुँच हो सकती है.
  • S3 encryption वास्तव में access control के अधिक करीब है, और डेटा सुरक्षा से ज़्यादा access permissions के प्रबंधन पर केंद्रित है.

यह महत्वपूर्ण क्यों है

  • security: encryption डेटा लीक होने की स्थिति में भी डेटा की रक्षा कर सकता है.
  • compliance: कुछ उद्योग regulations या कानूनी आवश्यकताओं को पूरा करने के लिए encryption आवश्यक हो सकता है.
  • data integrity: encryption यह सुनिश्चित करता है कि डेटा के साथ छेड़छाड़ नहीं हुई है.

GN⁺ की राय

  • encryption और access control के बीच भ्रम: बहुत से लोग encryption और access control को लेकर भ्रमित रहते हैं. यह लेख उस अंतर को स्पष्ट रूप से समझाता है.
  • वास्तविक security स्तर: S3 के encryption विकल्प वास्तव में कितने सुरक्षित हैं, इस पर एक आलोचनात्मक नज़र ज़रूरी है.
  • वैकल्पिक तकनीकें: S3 के अलावा Google Cloud Storage या Azure Blob Storage जैसी अन्य cloud storage सेवाओं पर भी विचार किया जा सकता है.
  • उपयोगकर्ता शिक्षा: शुरुआती engineers को encryption और access control के बीच अंतर स्पष्ट रूप से समझाना महत्वपूर्ण है.
  • तकनीक अपनाते समय विचारणीय बातें: encryption तकनीक अपनाते समय performance में कमी, लागत में वृद्धि जैसे कारकों पर भी विचार करना चाहिए.

1 टिप्पणियां

 
GN⁺ 2024-06-02
Hacker News राय
  • फ़ाइल सिस्टम के case-sensitive होने पर की गई शिकायत से सहमत नहीं हूँ। यह स्वाभाविक है, और macOS का इसे सपोर्ट न करना असुविधाजनक है।
  • S3 path असली directory नहीं बल्कि एक simulation है। उदाहरण के लिए, /builds/1/installer.exe वास्तव में ऐसा file है जिसके नाम में / शामिल है।
  • S3 या दूसरी AWS services का उपयोग करना जटिल है और दस्तावेज़ बहुत अधिक हैं, जिससे गलती से data expose हो सकता है। Hetzner Storage Boxes या DigitalOcean Spaces जैसी सरल services को प्राथमिकता देता हूँ।
  • अरबों objects को delete करना महंगा हो सकता है। लेकिन wildcard या पूरे bucket के लिए object expiration time सेट करने पर storage charges तुरंत और मुफ़्त में रोके जा सकते हैं।
  • असफल multipart uploads बिना दिखे पड़े रह सकते हैं और storage cost पैदा कर सकते हैं। S3 के 'Simple' नाम पर यह खरा नहीं उतरता।
  • multipart upload कई machines पर नहीं किया जा सकता, और LIST requests धीमी तथा महंगी होती हैं। bucket creation भी consistent नहीं हो सकता।
  • S3 case-sensitive है, और file system structure में बदलते समय यह समस्या बन सकता है।
  • ज़्यादातर S3 configurations GET requests की अनुमति देते हैं, लेकिन HEAD requests की नहीं। cache का उपयोग करने वाला flow काम नहीं कर सकता।
  • अगर आप pre-signed URLs का बहुत उपयोग करते हैं, तो URL generation speed को 10x से 40x तक बेहतर किया जा सकता है।
  • अधूरे multipart uploads के लिए भी storage cost देनी पड़ती है। automatic deletion setting को सक्षम करना चाहिए।
  • case sensitivity पर चर्चा बहुत ज़्यादा English-केंद्रित है।
  • S3 एक single TCP connection पर 100 HTTP requests भेजने के बाद बाकी सभी requests को चुपचाप ignore कर देता है।
  • गलत तरीके से configured website user content को Amazon Glacier पर upload कर सकती है और बाद में उसे serve भी कर सकती है।
  • S3 उच्च latency के कारण web serving के लिए उपयुक्त नहीं है। छोटे objects के लिए consistent latency 100-200 मिलीसेकंड होती है।