Tqabbil ta' kontrollur żgħir ma' VPN tan-NetworkManager
L-attivazzjoni tirritorna manku, mhux sessjoni lesta. Żomm il-profil, it-talba u l-konnessjoni attiva separati, u erġa' ibni l-istat wara restard.
Programm żgħir li jqabbad VPN eżistenti jeħtieġ kontrollur, mhux implimentazzjoni ġdida ta' VPN. Il-magna sostnuta għandha tieħu ħsieb in-negozjati u t-traffiku tal-mina; il-programm tiegħek għandu jesprimi t-talba tal-utent u jispjega r-riżultat b'mod onest. Fuq Linux, l-interfaċċja D-Bus tan-NetworkManager tagħti lil dak il-kontrollur mudell konkret biex isegwi.
Erba' verifiki jżommu lill-kontrollur milli jħawwad profil merfugħ, talba ta' attivazzjoni u sessjoni li taħdem.
Verifika waħda: liema identità qed tintgħażel
Żomm l-UUID tal-profil bħala l-identità permanenti, u ssolviha permezz tal-maniġer meta jkollok bżonn it-triq tal-oġġett. Isem muri jistgħu jaqsmu tnejn mill-profili, u triq tal-bus fil-ħin tat-tħaddim mhijiex preferenza tal-utent raġonevoli biex tinħażen. Ikteb l-għażla fil-konfigurazzjoni tiegħek stess, mhux f'kumment dwar liema entrata kienet it-tieni fil-lista.
Ivverifika x'jirritorna l-maniġer qabel ma ssejjaħlu qbil. UUID li ma jibqax jeżisti jipproduċi falliment ta' tfittxija, u dik hija triq tal-kodiċi differenti minn profil li jeżisti u jirrifjuta li jiġi attivat.
Verifika tnejn: x'jirritorna s-sejħa tal-attivazzjoni
Is-sejħa tal-attivazzjoni dokumentata tieħu triq tal-oġġett ta' konnessjoni eżistenti, triq tal-apparat u oġġett speċifiku. Tirritorna triq tal-konnessjoni attiva, u dik it-tweġiba hija manku, mhux riżultat ta' tħejjija. Twaqqafx il-bandiera ta' tħejjija tal-applikazzjoni tiegħek mill-valur tar-ritorn; abbona minflok mal-istat u r-raġuni tal-konnessjoni attiva.
Għal VPN, l-oġġett speċifiku jagħżel il-konnessjoni bażi attiva. Li tgħaddi t-triq tal-għerq tħalli l-għażla tal-apparat lin-NetworkManager, li jagħżel dak li bħalissa huwa l-predeżinjat. Din hija deċiżjoni tal-kuntest tar-rotot u mhux qasam tal-password, u tbiddel liema apparat il-mina tqiegħed fuqu.
Tieħux eżempju ġenerali ta' żid-u-attiva u tistenna li joħloq profil VPN. L-għajnuna dokumentata teskludi l-konnessjonijiet VPN, għalhekk it-tħejjija jew l-importazzjoni tal-profil hija pass separat u rivedut. Dan huwa importanti għax it-tħejjija teħtieġ awtorizzazzjoni u reviżjoni li buttuna tal-konnessjoni ma tagħtix. Ittratta l-importazzjoni bħala azzjoni amministrattiva b'linja tal-log tagħha u b'approvatur tagħha.
Verifika tlieta: kif jiġi rappreżentat l-istat
Konnessjoni attiva tgħaddi minn attivazzjoni, attiva, diżattivazzjoni u diżattivata, u l-qasam tar-raġuni jgħid għalfejn. Li tgħaffeġ dan kollu f'valur Boolean imsejjaħ loggedIn jitlef l-informazzjoni li l-utent jeħtieġ u dik li s-support se jistaqsi dwarha. Uri mill-inqas jekk il-konnessjoni hix pendenti, stabbilita jew marret, u żomm is-sekwenza tar-raġuni għall-każ tal-falliment.
Qabbad it-tweġibiet asinkroni mat-talba li ġġenerathom. Tlestija tard ta' tentattiv eqdem m'għandhiex tikteb fuq azzjoni tal-utent aktar ġdida, u pressjoni doppja fuq Connect għandha tiġi injorata jew trattata bħala kanċellazzjoni u tentattiv mill-ġdid b'politika viżibbli.
Verifika erbgħa: x'jiġri wara restard
Meta l-maniġer jerġa' jibda jew il-kontrollur tiegħek jerġa' jqabbad mal-bus, erġa' ibni l-istat osservat mill-proprjetarju. Tkomplix turi sessjoni fil-cache bħala attiva għax triq tal-oġġett antika għadha fil-memorja. Is-sinjali tal-bidla tal-istat jeżistu proprju sabiex kontrollur jista' jerġa' jissinkronizza minflok jaqta' bl-addoċċ.
Agħżel xi jfisser li tagħlaq il-kontrollur. Li tħalli konnessjoni eżistenti proprjetà tal-magna miftuħa tista' tkun korretta, u li tħott sessjoni apposta ta' ħajja qasira tista' wkoll tkun korretta. Li tħalli konnessjoni eżistenti proprjetà tal-magna miftuħa tista' tkun korretta; li tħott sessjoni apposta ta' ħajja qasira tista' wkoll tkun korretta. Ikteb dak il-kuntratt ta' propjetà fl-interfaċċja minflok tassumi li l-ħruġ tal-proċess iwettaq l-azzjoni tan-netwerk. L-utenti m'għandhomx ikollhom jaqtgħu bl-addoċċ jekk l-għeluq tat-tieqa se jwaqqax il-mina tagħhom. Qiegħed it-tweġiba fit-test tal-interfaċċja, mhux biss f'kumment tal-kodiċi.
Żomm l-awtorità u s-sigrieti għand sidienhom
Il-permessi jiġu lura bħala iva, auth jew le, u l-interfaċċja għandha tirrifletti d-differenza bejn permess, permess wara l-awtentikazzjoni u miċħud. Li tħaddem il-kontrollur bħala root ma jimplimentax politika tal-permessi; tneħħi l-mistoqsija.
Il-kredenzjali jappartjenu lill-aġent tas-sigrieti sostnut jew lill-integrazzjoni tal-klijent għall-metodu tal-awtentikazzjoni konfigurat. Password fil-kodiċi tas-sors, f'argument jew f'log hija sejba, u awtorizzazzjoni amministrattiva lokali mhijiex l-istess avveniment bħall-awtentikazzjoni fil-bieb.
Fl-aħħar, irrapporta l-istat tal-konnessjoni separatament mill-kompitu li l-utent irid iwettaq. Mina tista' tkun attiva waqt li isem privat jew applikazzjoni jibqgħu mhux disponibbli, u dak it-tieni falliment jistħoqqlu messaġġ tiegħu u status tiegħu. Kontrollur li jgħid eżattament liema saff falla huwa aktar utli minn wieħed li jgħid li l-VPN hija nieżla.