5

मैं अमेज़ॅन सरलीब दस्तावेज की जांच कर रहा हूं। वे केवल सर्वर पक्ष भाषाओं का जिक्र करते हैं।अमेज़ॅन SimpleDB जावास्क्रिप्ट इंटरफ़ेस संभव है?

क्या सर्वर के माध्यम से सीधे क्लाइंट पक्ष से डीबी में डेटा डालने के लिए वैसे भी है?

यदि नहीं, तो कैसे आते हैं?

उत्तर

5

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

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

नकारात्मकता यह है कि आपको क्लाइंट पक्ष पर प्रसंस्करण का एक गुच्छा करना होगा। आप अपने ऐप उपभोग/आउटपुट की तुलना में अधिक डेटा प्राप्त करने की भी संभावना रखते हैं, इसलिए सर्वर पर डेटा के बजाय क्लाइंट पर डेटा को प्रोसेस करना संभवतः अधिक विलंबता का सामना कर सकता है क्योंकि आप उपयोगकर्ता को अधिक डेटा स्थानांतरित कर रहे हैं और इसे धीरे-धीरे संसाधित कर रहे हैं।

आशा इस मदद करता है

+1

अब आप (मुख्य रूप से) गुप्त कुंजी को प्रकट किए बिना, इस क्लाइंट-साइड को सुरक्षित रूप से कर सकते हैं। नीचे मेरा उत्तर और मेरा संबंधित उत्तर http://stackoverflow.com/questions/4988367/anonymous-read-with-amazon-simpledb देखें। आपको छोटे, सुरक्षित, सर्वर-साइड घटक के साथ 1% बाएं 99% क्लाइंट साइड कॉल मिलते हैं। – toolbear

2

यदि नहीं, तो कैसे आते हैं?

सुरक्षा। आप अपने डेवलपर खाते के साथ डीबी को प्रमाणित करते हैं। अमेज़ॅन को आपके अंतिम उपयोगकर्ताओं के बारे में पता नहीं है (जिसे ब्राउज़र से सीधे प्रमाणीकृत करने के लिए इसकी आवश्यकता होगी)। यह निर्धारित करने के लिए एप्लिकेशन कोड पर निर्भर करता है कि अंतिम उपयोगकर्ताओं को क्या करने की अनुमति है और क्या नहीं।

उस ने कहा, Javascript Scratchpad for Amazon SimpleDB नमूना आवेदन है। यह सीधे ब्राउज़र से SimpleDB तक पहुंचता है (आपको अपने एडब्ल्यूएस क्रेडेंडियल में टाइप करना होगा)।

+0

हो सकता है कि मैं क्या देख रहा हूं? – JSNewbie

+0

ठीक है, आपको अभी भी ब्राउज़र के बाहर कहीं भी एक्सेस अनुमतियां कॉन्फ़िगर करने की आवश्यकता है (जहां इसे हैक नहीं किया जा सकता है)। – Thilo

+0

धन्यवाद, हमेशा के रूप में सभी उत्तरों अच्छे हैं। – JSNewbie

1

SimeplDBAdmin एक जावास्क्रिप्ट/PHP आधारित इंटरफेस है:

http://awsninja.com/2010/07/08/simpledbadmin-a-phpmyadmin-like-interface-for-amazon-simpledb/

पीएचपी ओर एक रिले स्क्रिप्ट [relay.php] है जावास्क्रिप्ट से किए गए अनुरोधों को पारित करेंगे जो ग्राहक और उन्हें सर्वर पर भेजते हैं, सर्वर से प्रतिक्रिया लेते हैं और क्लाइंट के लिए इसे दोबारा सुधारते हैं। यह आसानी से जावास्क्रिप्ट के साथ क्रॉस-डोमेन समस्याओं के आसपास हो सकता है [यदि वेब क्लाइंट ने www.example.com से जावास्क्रिप्ट कोड युक्त वेब पेज डाउनलोड किया था तो यह केवल जावास्क्रिप्ट को डिफ़ॉल्ट रूप से www.example.com पर कनेक्ट करने की अनुमति देगा] ।

अनुरोध हस्ताक्षर सहित अन्य सभी, जावास्क्रिप्ट कोड द्वारा किया जाता है।

यह भी ध्यान दें कि अमेज़ॅन ने हाल ही में आपके अमेज़ॅन खाते के तहत उप-खातों को सेट करने की अनुमति देने के लिए एक नई बीटा सेवा जारी की है। सरल डीबी सुरक्षा बहुत बुनियादी है [या तो प्रति खाता चालू या बंद] लेकिन चूंकि यह कुछ सीमित प्रकार के अनुरोध ट्रैकिंग प्रदान करता है, यह तर्क दिया जा सकता है कि जावास्क्रिप्ट का उपयोग करके और प्रत्येक उपयोगकर्ता को अपने यूजर यूजर आईडी और अनुरोध हस्ताक्षर के लिए कुंजी अधिक सुरक्षित है। प्रत्येक उपयोगकर्ता को समान उपयोगकर्ता आईडी और प्रमाणपत्र का उपयोग करने के लिए, निश्चित रूप से असुरक्षित होगा।

0

सुरक्षित, गुमनाम, केवल पढ़ने के लिए SimpleDB के लिए अविश्वसनीय ग्राहकों से पहुंच की अनुमति देते पर समान प्रश्न के this answer देखें: anonymous read with amazon simpledb

है कि इसका जवाब से कुछ बदलाव:

  • पहुँच नीति केवल पढ़ने के लिए सेट नहीं है। हालांकि, यह ठीक दानेदार नियंत्रण की अनुमति देता है, इसलिए आप अभी भी
  • की अनुमति के प्रकारों को सीमित करना चाहते हैं। AWS docs on token based auth और example apps समांतर पथ दिखाएं: अज्ञात पहुंच या गैर-अज्ञात एडब्ल्यूएस/आपके क्रेडेंशियल्स के साथ संघीय पहुंच लेकिन आपकी गुप्त कुंजी को उजागर किए बिना।
संबंधित मुद्दे