हम अभी Azure Storage के साथ शुरुआत कर रहे हैं। हमारे परिदृश्य में हम निजी ब्लॉब्स पर अपलोड करते हैं जिन्हें हमें बाद में सीधे अपने क्लाइंट ऐप से एक्सेस करने की आवश्यकता होती है, उदा। इमेजिस।
क्या एक्सेस कुंजी वाले URL के साथ Azure स्टोरेज में निजी ब्लॉब्स को संबोधित करने का एक तरीका है?
एमएस डॉक्स के माध्यम से सभी को मैं अभी तक पा सकता हूँ सरल यूआरआई के माध्यम से सरल यूआरएल एक्सेस है, उदा। द्वारा दिया गया URI
की संपत्ति CloudBlockBlob
उदाहरण जब लिस्टिंग .net एपीआई के माध्यम से बूँदें।
स्वाभाविक रूप से एक वेब ब्राउज़र से इसे एक्सेस करना बूँद के सार्वजनिक नहीं होने के कारण विफल हो जाता है।
हालाँकि, क्या हम URL को अर्हताप्राप्त कर सकते हैं ताकि अधिकृत ग्राहकों को बूँद तक पहुँचने की अनुमति देने के लिए पहुँच कुंजी को भी शामिल किया जा सके ..?
उत्तर:
उत्तर № 1 के लिए 1यह एपीआई है कि आप संग्रहण से कैसे पढ़ते हैं:
https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob
एक्सेस कुंजी को पास करने के लिए कोई URL-Parameter नहीं है, केवल हेडर वैल्यू है Authorization
। तो आप अनुरोध मैन्युअल रूप से कर सकते हैं और उदा। बेस64 एन्कोडेड छवि के रूप में परिणामी डेटा जोड़ें। यदि संभव हो तो मैं इसके खिलाफ सलाह दूंगा।
आपको यह भी पता होना चाहिए कि पास करके आपकी पहुंच कुंजी ग्राहक के लिए, आप प्रभावी रूप से अपना बना रहे हैंवैसे भी सार्वजनिक रूप से बूँद। अनाम एक्सेस की तुलना में आप अपने डेटा को अधिक जोखिम में डाल रहे हैं, क्योंकि एक्सेस कुंजी अनाम एक्सेस की तुलना में अधिक संचालन की अनुमति देती है। यह आपके वस्तुनिष्ठ-सी ऐप के लिए भी सही होगा, भले ही इसके बहुत अधिक होने की संभावना हो। एसएएस वहां जाने का रास्ता है - एक बैकएंड सेवा बनाएं जो दिए गए संसाधनों के लिए एसएएस टोकन का एक निर्धारित सेट बनाता है। यह हालांकि कहीं कहीं पूर्ण पहुँच कुंजी को बाधित करने की तुलना में बहुत अधिक प्रयास है।
"अनाम उपयोगकर्ताओं के लिए उपलब्ध सुविधाएँ" देखें:
https://docs.microsoft.com/en-us/azure/storage/blobs/storage-manage-access-to-resources