2012-10-18 16 views
8

मैं एक वेब एप्लिकेशन बना रहा हूं और उपयोगकर्ता अपलोड स्टोर करने के लिए अमेज़ॅन एस 3 का उपयोग कर रहा हूं।अमेज़ॅन एस 3 डाउनलोड के लिए सुरक्षा

मेरी चिंता यह है कि, मैं नहीं चाहता कि उपयोगकर्ता ए अपलोड किए गए दस्तावेज़ के लिए अपना डाउनलोड लिंक देखने के लिए urltoMyS3/doc1234.pdf है और urltoMyS3/doc1235.pdf को आज़माएं और अन्य उपयोगकर्ता दस्तावेज़ प्राप्त करें।

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

उपयोगकर्ता फ़ाइलों को आम तौर पर अमेज़ॅन एस 3 के साथ कैसे संभाला जाता है? या यह आमतौर पर एक परिदृश्य में उपयोग नहीं किया जाता है जहां फाइलें सार्वजनिक नहीं होनी चाहिए? क्या इस तरह के लिए कोई और सेवा है?

धन्यवाद

उत्तर

8

आप Query String Authentication, जो आपके समस्या का समाधान होगा लागू कर सकते हैं।

क्वेरी स्ट्रिंग प्रमाणीकरण HTTP या ब्राउज़र संसाधनों तक पहुंच के लिए उपयोगी है जो आमतौर पर प्रमाणीकरण की आवश्यकता होती है। क्वेरी स्ट्रिंग में हस्ताक्षर अनुरोध सुरक्षित करता है। क्वेरी स्ट्रिंग प्रमाणीकरण अनुरोधों की समाप्ति तिथि की आवश्यकता होती है। आप युग या यूनिक्स समय में भविष्य में किसी भी समय की समाप्ति समय निर्दिष्ट कर सकते हैं (1 जनवरी, 1 9 70 से सेकंड की संख्या)।

+1

FYI करें, अपने लिंक अब एक सामान्य स्वागत पृष्ठ पर रीडायरेक्ट। –

0

समयबद्ध प्रमाणीकरण (के रूप में अन्य उत्तर में सुझाव दिया) के लिए काम नहीं करेंगे देखते हैं। आप अपने वेब अनुप्रयोग सर्वर पर एक ड्राइव के रूप में अपने एस 3 बाल्टी को माउंट करने के लिए s3fs जैसे कुछ को लागू करने पर विचार कर सकते हैं। इस तरह से आप बस अपना प्रमाणीकरण कर सकते हैं और फिर सीधे उपयोगकर्ता को फ़ाइल की सेवा कर सकते हैं, बिना किसी विचार के कि फ़ाइल S3 में रहती है। इसी प्रकार, आप सीधे इस s3fs माउंट पर अपलोड की गई फाइलें लिख सकते हैं।

S3fs, आपको तेजी से पहुंच के लिए आपकी मशीन पर S3 निर्देशिका का स्थानीय कैश कॉन्फ़िगर करने की अनुमति देता है।

यह क्लस्टर वेब सर्वर वातावरण में भी अच्छी तरह से काम करता है, क्योंकि आप केवल प्रत्येक सर्वर को s3fs ड्राइव को माउंट कर सकते हैं और इसे स्वतंत्र रूप से निष्पादित/पढ़/लिख सकते हैं।

A link with more info