API-களை ஒப்பிடும் முன் VPN செயல்பாட்டை வரையறுக்கவும்
இணைப்புக் கட்டுப்பாடு, சுயவிவர வழங்கல், பயனர் நிர்வாகம் மற்றும் கண்காணிப்பு வெவ்வேறு API-கள். முதலில் பொருள், செயல் மற்றும் வெற்றி நிபந்தனையைப் பெயரிடுங்கள்.
ஒரு தயாரிப்பு பக்கம் தன்னிடம் API உள்ளதாகக் கூறுகிறது, ஒருங்கிணைப்புக் கூட்டம் இரண்டாவது கேள்வியில் நிற்கிறது. எந்தச் செயல்பாடு, எந்தப் பொருளின் மீது, யாரால் அழைக்கப்படுகிறது, எதை வெற்றி எனக் கணக்கிடுவது? தயாரிப்புகளை ஒப்பிடும் முன் இந்த நான்கிற்கும் பதில் சொல்வது பொதுவாக பாதி வேட்பாளர்களை நீக்கிவிடும். மீதமுள்ள ஒப்பீட்டையும் ஒரு சோதனை தீர்க்கக்கூடிய ஒன்றாக மாற்றுகிறது.
«API உள்ளது» என்பதை ஒரு செயல்பாட்டால் மாற்றுங்கள்
API என்பது ஒரு கடத்தி, திறன் அல்ல. REST முனை, உள்ளூர் சாக்கெட் மற்றும் கட்டளை வரி உறை அனைத்தையும் API என அழைக்கலாம், அவை சமமான செயல்பாடுகளை வழங்குவதில்லை.
ஆவணங்களைப் பார்ப்பதற்கு முன் செயல்பாட்டை ஒரு வாக்கியமாக எழுதுங்கள்.
உள்ளூர் இணைப்பைத் தொடங்குவது முன்னே பயனர் இருக்கும் வாடிக்கையாளர் பக்கச் செயல். சாதன சுயவிவரத்தை வழங்குவது பின்னே பட்டியல் இருக்கும் வழங்கல் செயல். பயனரின் அணுகலை முடக்குவது தணிக்கைத் தடயத்துடன் கூடிய நிர்வாகச் செயல். இந்த மூன்றும் பொதுவாக வெவ்வேறு கூறுகளில், வெவ்வேறு குழுக்களின் உடைமையில், வெவ்வேறு அதிகாரத்துடன் வாழ்கின்றன.
ஒப்பந்தத்தைச் சோதனைக்குரியதாக்கும் நான்கு புலங்கள்
ஒவ்வொரு செயல்பாட்டிற்கும் நான்கு புலங்களை நிரப்புங்கள்: பொருள், செயல், அழைப்பவர் மற்றும் வெற்றி நிபந்தனை. ஒரு புலம் விடுபட்ட ஒப்பந்தம் ஒரு ஆசை மட்டுமே.
அட்டவணையே முழு பணித்தாள்:
| Field | Question | Example |
|---|---|---|
| Object | What is being acted on? | One enrolled device |
| Action | Observe, create, change, start, stop, or revoke? | Revoke |
| Caller | Which identity calls it? | Deployment service |
| Success | What 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 தானே செயலிழந்த நிலைக்கான மீட்புப் பாதையை எழுதுங்கள். பொருளையும் அதன் வாழ்க்கைச் சுழற்சியையும் உடைமையாகக் கொள்ளும் இடைமுகத்தைத் தேர்ந்தெடுங்கள்; தயாரிப்பு பக்கத்தின் தானியங்கி கூற்றுகள் அதற்கு மாற்றல்ல.