मैं एक विश्वसनीय API डिज़ाइन के बारे में सुझाव ढूंढ रहा हूं। मैंने आरईएसटी एपीआई योजनाओं, प्रमाणीकरण/प्रमाणीकरण आदि के तरीकों के बारे में बहुत कुछ पढ़ा है। मैं यह तय नहीं कर सकता कि मुझे वास्तव में एपीआई कुंजी का उपयोग करने की आवश्यकता है या नहीं। यदि आप उपयोग की निगरानी करना चाहते हैं, तो प्रत्येक एप्लिकेशन के अनुरोधों को सीमित करें और सांख्यिकीय डेटा के लिए एपीआई कुंजी का उपयोग करके मैं समझता हूं।RESTful API कुंजी सुझाव
जो मैं टालना चाहता हूं उसे एप्लिकेशन जोड़ने/प्रबंधित करने/हटाने और एप्लिकेशन प्रशासकों को हटाने/हटाने के लिए अतिरिक्त वेब इंटरफेस बनाना है। शायद एपीआई कुंजी वितरण करने का एक आसान तरीका है। या क्या मुझे वास्तव में उन लोगों की ज़रूरत है? मेरा मतलब है, उपयोग की निगरानी और सीमित करना अच्छा है और उपयोगी लगता है लेकिन क्या यह अन्य चीजों के लायक है जो मुझे कुंजी वितरण के लिए करने की ज़रूरत है।
अधिक विशिष्ट होने के लिए मेरी वेबसाइट स्लाइडशेयर और स्क्रिबड की तरह कुछ है। मैं दस्तावेजों को जोड़ने और प्रबंधित करने और उपयोगकर्ताओं के बारे में जानकारी प्राप्त करने जैसे अपने कार्यों में एपीआई पहुंच देना चाहता हूं। तो उदाहरण के लिए एक फ़ाइल अपलोड करने के लिए आपको किसी भी तरह प्रमाणित करने और इसे करने के लिए एक विशिष्ट खाते का उपयोग करने की आवश्यकता है। इस मामले में एक एपीआई कुंजी एक आवश्यकता है या मैं सिर्फ प्रमाणीकरण उपयोगकर्ताओं के साथ रह सकता है?
तो एपीआई कुंजी को संभालने के लिए मुझे सबसे अच्छा तरीका क्या लगता है? या मैं उन्हें बिल्कुल इस्तेमाल करना चाहिए? कुंजी को वितरित (बनाने, निकालने) के लिए एक और चालाक तरीका है?
अग्रिम में :)
मैंने आपके द्वारा यहां दिए गए लिंक की जांच की है। मैं बाहरी सेवाओं का उपयोग नहीं करना चाहता (भले ही वे स्वतंत्र हैं)। और कुछ सेवाओं के लिए एपीआई कुंजी का उपयोग करने और दूसरों के लिए इसका उपयोग नहीं करने के बारे में, क्या यह एपीआई कुंजी के उद्देश्य को हराने में नहीं है? – stormbreaker
अच्छी तरह से Google इसे कई सालों से और कई अन्य लोगों के लिए भी पसंद करता है, ठीक है, अगर आप अपने स्वयं के लिखने के लिए भी हैं (यदि वेब स्रोत फोर्ज आदि के आसपास पहले से मौजूद नहीं है) एपीआई प्रबंधन सॉफ्टवेयर। एपीआई कुंजी के साथ सबकुछ सीमित करना (यह नहीं पता कि आपका होस्टर कौन है) बहुत बेहतर है, इसलिए आप पूरी तरह से उपयोग को नियंत्रित कर सकते हैं ताकि आपके सॉफ़्टवेयर के दुरुपयोग का जोखिम बहुत कम हो और सुरक्षा अधिक हो। या हर कोई इसे एपीआई कुंजी के बिना उपयोग कर सकता है और जो चाहें वह कर सकता है (और अंततः प्रति घंटे अधिक अनुरोधों के साथ अपना सर्वर नीचे ला सकता है)। मुझे लगता है कि सुरक्षा अधिक महत्वपूर्ण है। –
ठीक है आपने उत्तर दिया कि मुझे एपीआई कुंजी का उपयोग क्यों करना चाहिए। इसका उपयोग करने के तरीके के बारे में कैसे? अगर मैं उन सभी को एपीआई देता हूं जो अनुरोध करते हैं तो क्या वे उन्हें स्विच करने की अनुमति नहीं देंगे और फिर भी खराब चीजें करेंगे? – stormbreaker