उत्पादन पृष्ठ सांगते की त्यात API आहे, आणि एकात्मता बैठक दुसऱ्या प्रश्नावर थांबते. कोणती क्रिया, कोणत्या वस्तूवर, कोण कॉल करते, आणि कशाला यश मानायचे? उत्पादने तुलना करण्यापूर्वी या चारांची उत्तरे दिल्यास सहसा अर्धे उमेदवार वगळले जातात. उर्वरित तुलनाही चाचणी ठरवू शकेल अशी होते.

API आहे या दाव्याची जागा एका क्रियेने घ्या

API हे वाहतुक आहे, क्षमता नाही. REST एंडपॉइंट, स्थानिक सॉकेट आणि कमांड-लाइन रॅपर या सर्वांना API म्हणता येते, आणि ते समतुल्य क्रिया देत नाहीत.

दस्तऐवज उघडण्यापूर्वी क्रिया एका वाक्यात लिहा.

स्थानिक कनेक्शन सुरू करणे ही समोर वापरकर्ता असलेली क्लायंट-बाजूची कृती आहे. डिव्हाइस प्रोफाइल जारी करणे ही मागे यादी असलेली पुरवठा कृती आहे. वापरकर्त्याचा प्रवेश बंद करणे ही लेखापरीक्षण माग असलेली प्रशासकीय कृती आहे. या तिन्ही सहसा वेगवेगळ्या घटकांत, वेगवेगळ्या संघांच्या मालकीत, वेगवेगळ्या अधिकाराने राहतात.

करार चाचणीयोग्य करणारी चार क्षेत्रे

प्रत्येक क्रियेसाठी चार क्षेत्रे भरा: वस्तू, क्रिया, कॉल करणारा आणि यशाची अट. क्षेत्र गहाळ असलेला करार म्हणजे फक्त इच्छा.

तक्ताच संपूर्ण कार्यपत्रक आहे:

FieldQuestionExample
ObjectWhat is being acted on?One enrolled device
ActionObserve, create, change, start, stop, or revoke?Revoke
CallerWhich identity calls it?Deployment service
SuccessWhat observable state proves it?Future sign-in denied

यशाची अट हे लोक वगळतात ते क्षेत्र आहे, आणि एकात्मता काम करते का हेही तेच ठरवते. जतन केलेली सेटिंग सक्रिय बोगदा नाही, आणि अक्षम केलेले खाते संपलेले सत्र नाही.

जर दोन क्रियांना वेगवेगळे कॉल करणारे हवे असतील तर ते दोन एकात्मता आहेत. त्यांना एका सेवा खात्यात एकत्र करणे म्हणजे सहसा दोन्हीपैकी कशालाही हव्या असलेल्यापेक्षा जास्त अधिकार देणे.

इंटरफेस त्याच्या खऱ्या स्तराशी जुळवा

OpenVPN चा समुदाय व्यवस्थापन इंटरफेस TCP किंवा Unix सॉकेटद्वारे डेमनशी बोलतो. त्याच्या आदेशांमध्ये स्थितीचे निरीक्षण आणि डेमनला संकेत यांचा समावेश आहे.

यामुळे तो डेमनचा नियंत्रण चॅनेल होतो, होस्ट केलेला सदस्यत्व API किंवा वापरकर्ता नोंदणी सेवा नाही. त्याचे दस्तऐवज काळजीपूर्वक वाचल्यास वस्तूची मालकी नसलेल्या स्तरावर बांधणी टळते.

तेच दस्तऐवज सांगते की प्रोटोकॉलकडे स्वतःचे एन्क्रिप्शन नाही. जो सॉकेटपर्यंत पोहोचू शकतो तो डेमन नियंत्रित करू शकतो, म्हणून त्याला मेट्रिक्स फीड नव्हे, संवेदनशील नियंत्रण माना. तो loopback किंवा Unix सॉकेटला बांधा, आणि दूरच्या कॉल करणाऱ्याला गरज असल्यास मर्यादित व्यवस्थेमागे ठेवा. सोयीसाठी तो इंटरनेटवर उघडल्यास नियंत्रण चॅनेल घटना होते.

कॉलनंतरचे वर्तन निर्दिष्ट करा

स्वीकारणे पूर्ण होण्यासारखे नाही. बोगदा उभा राहण्यापूर्वी डेमन परतू शकतो, म्हणून दस्तऐवजीकृत पूर्णता किंवा अपयश घटनेची वाट पाहा आणि ती पाठवलेल्या विनंतीशी जोडा.

प्रतिसाद हरवल्यास कॉल करणारा काय करेल ते ठरवा. निर्मिती किंवा पुनःकनेक्शन आंधळेपणाने पुन्हा करणे म्हणजे पहिल्या विनंतीचा परिणाम झाला का हे तपासण्यासारखे नाही.

प्रवेश काढणे हे किमान तीन वेगळ्या क्रिया आहेत: भविष्यातील साइन-इन अडवणे, सुरू असलेले सत्र संपवणे आणि क्रेडेन्शियल रद्द करणे. धोरणाला खरोखर हवे असलेले मागा, आणि करारात कोणते कोणते ते सांगा. पुराव्याशिवाय एका यशस्वी खाते अद्ययावताला संपूर्ण रद्द करणे म्हणू नका. घटनेच्या वेळी, घड्याळ चालू असताना, हा फरक महत्त्वाचा आहे.

पायलटने करार तपासा

छोट्या मंजूर पायलटने यश, नकार, व्यत्यय आणि पुनःप्रयत्न व्यापावेत, आणि नंतर ज्या अनुप्रयोग क्रियेला परवानगी किंवा प्रतिबंध असायला हवा ती.

डेमन-स्तरीय इंटरफेससाठी दोन आदेश निरीक्षण आणि संकेत यांचा सराव करतात:

echo state | nc -w 2 127.0.0.1 7505
echo signal SIGTERM | nc -w 2 127.0.0.1 7505

क्रियेला हवा असलेला अधिकारच द्या. गुपिते नेहमीच्या लॉगबाहेर ठेवा, आणि कोणते लक्ष्य बाधित झाले व ते कसे संपले हे सांगण्यापुरते खाजगी तपशील नोंदवा.

नियंत्रण API स्वतः बंद असल्याच्या प्रसंगासाठी पुनर्प्राप्ती मार्ग लिहा. जो इंटरफेस वस्तू आणि तिच्या जीवनचक्राचा मालक आहे तो निवडा; उत्पादन पृष्ठावरील स्वयंचलनाचे दावे त्याला पर्याय नाहीत.

संबंधित लेख