Kí ni ìdí tí Apps Script kò fi lè dé àpù ìnú rẹ nípasẹ̀ VPN
Apps Script ń ṣiṣẹ́ lórí nẹ́tíwọ́kì Google, kì í ṣe lórí kọ̀mpútà tó ní VPN. Ṣe àpẹẹrẹ ọ̀nà dátà fún ẹ̀rọ tó ń fi ìbéèrè ránṣẹ́.
Pánẹ́ẹ̀lì náà ń ṣí dáadáa nínú aṣàwákiri lórí kọ̀mpútà, ṣùgbọ́n skripti tábìlì kan náà kùnà pẹ̀lú àṣìṣe àdírẹ́sì tí kò sí. Yíyí VPN bí ó ti wà tàbí pípa a kò yí ohunkóhun padà, nítorí pé ìbéèrè náà kò fi kọ̀mpútà sílẹ̀ rárá. Apps Script ń ṣiṣẹ́ lórí àwọn ohun èlò Google ó sì ń ṣí ìsopọ̀ tirẹ̀ láti ibẹ̀. Òtítọ́ kan ṣoṣo yẹn ni ó ń pinnu gbogbo àpẹẹrẹ.
Ya ìbéèrè méjì sọ́tọ̀ kí o tó yí ohunkóhun padà: ẹ̀rọ wo ni ó ń fi ìbéèrè ránṣẹ́, àti ẹ̀rí wo ni ẹni tó ń gbà á ń gbà.
Ìbéèrè náà kò bẹ̀rẹ̀ lórí kọ̀mpútà rẹ rárá
Tábìlì aṣàwákiri kan ń ránṣẹ́ láti kọ̀mpútà, nípasẹ̀ adapter VPN, àfikún DNS inú àti sínú ẹ̀ka nẹ́tíwọ́kì àdáni. UrlFetchApp ń ránṣẹ́ láti olùgbàlejò tí Google ń ṣàkóso, nítorí náà ó ń rí àwọn olùyẹ́jú Google, àwọn àdírẹ́sì ìjáde Google àti kò rí ọ̀kan nínú àwọn ọ̀nà split-tunnel rẹ. Ọ̀nà méjì náà pín ìwé tábìlì kan, kì í ṣe ibi nẹ́tíwọ́kì. Nínú àkọsílẹ̀ ìwọlé àpù náà, ìgbìyànjú skripti náà farahàn bí àdírẹ́sì Google dípò àdírẹ́sì láti inú àkójọ VPN, ìyẹn sì ni ìjẹ́rìí tó yára jùlọ tí wàá rí.
Ìdí nìyẹn tí àwọn àtúnṣe àdúgbò kò fi ṣe ohunkóhun. Títọ́ kọ̀mpútà sí olùyẹ́jú mìíràn, àtúnbẹ̀rẹ̀ ẹrọ VPN tàbí fífi àkọsílẹ̀ kún hosts ń yí ọ̀nà aṣàwákiri padà ó sì ń fi ọ̀nà skripti náà sílẹ̀ gẹ́gẹ́ bó ti wà.
Ohun tí ìyẹn ń yọ kúrò
A kò lè dé ibi ìparí tí ó wà nínú nìkan láti Apps Script, àti àkójọ IP tí a gbà láàyè jẹ́ àropo aláìlágbára fún ìṣàkóso ìwọlé ní ipò yìí. Àwọn ibiti ìjáde Google gbòòrò, a pín wọn pẹ̀lú àwọn oníbàárà mìíràn, a kò sì lè so wọ́n mọ́ skripti kan. Ìtọ́kasí UrlFetchApp sọ pé àwọn ìbéèrè ń jáde láti inú àkójọ IP Google, ìyẹn ni ẹ̀yà tí ó ní àṣẹ ti ọ̀rọ̀ yẹn. Ṣíṣí àpù inú fún àwọn ibiti yẹn ń gba ìrìnnà tí o kò lè dálẹ́bi.
Àwọn ìgbà aṣàwákiri ń hùwà bákan náà. Kúkì tàbí ìgbà SSO nínú aṣàwákiri kọ̀mpútà kò rin ìrìn àjò pẹ̀lú ìbéèrè náà, èyí tí ó jẹ́ alábàáṣiṣẹ́ HTTPS tuntun tí kò ní ipò ìgbà. Ohunkóhun tí ó gbára lé ìtúnjáde SSO aṣàwákiri ń parí ní ìtúnjáde yẹn, kì í ṣe ní dátà rẹ.
Àwọn ẹ̀yà méjì tí ó ṣeé ṣe
Ẹ̀yà àkọ́kọ́ ń fún skripti ní API tí a fọwọ́ sí. Tẹ ìsìn inú jáde lẹ́yìn ẹnubodè tí ó ń jẹ́rìí ẹni tó ń pè, lẹ́yìn náà jẹ́ kí skripti náà gbé ẹ̀rí jáde tí ẹnubodè gbà, bíi tọ́kẹ̀n àkọsílẹ̀ ìsìn. Nínú Apps Script ìyẹn túmọ̀ sí ilé ìkàwé OAuth2 tàbí ScriptApp.getOAuthToken(), pẹ̀lú àkójọ àwọn ìdánimọ̀ ẹni tó ń pè tí a gbà ní ẹ̀gbẹ́ API dípò àkójọ IP.
Ẹ̀yà kejì yí ìtọ́sọ́nà padà. Iṣẹ́ inú kan ń béèrè lọ́wọ́ ẹ̀rọ àdáni ó sì ń tẹ àbájáde tí a ṣàkóso jáde sínú Sheet, ohun Cloud Storage tàbí tábìlì BigQuery tí skripti náà ń kà. Iṣẹ́ Cloud Run, olùṣètò àkókò àdúgbò tàbí ìgbésẹ̀ ETL tí ó wà tẹ́lẹ̀ lè jẹ́ iṣẹ́ yẹn, kò sì sí ọ̀kan nínú wọn tí ó ní láti gba ìsopọ̀ tí ń wọlé. Lẹ́yìn náà tábìlì náà ń lo àkójọ dátà dípò ojú-ìwé.
Ẹ̀yà wo ni yóò borí dá lórí àìdárugbó, ìṣàkóso ní ìpele pápá àti ẹni tí ó gbọdọ̀ lè ṣàyẹ̀wò olùkà.
Ohun tí àbájáde tí a tẹ jáde gbọdọ̀ ní
Ìṣàn ìtọ́sọ́nà òdìkejì nílò àdéhùn tí ó ṣe kedere: àwọn pápá tí ó ń gbé, ààrin ìmúdájú, ẹgbẹ́ olùkà àti ohun tí ó ṣẹlẹ̀ nígbà tí iṣẹ́ inú bá kùnà. Láìsí àwọn mẹ́rin yẹn, tábìlì náà ń fi àwọn nọ́mbà àná hàn ní ìdákẹ́jẹ́. Fi ọ̀wọ̀n àkókò àmì tí a dá àti iye ìlà kún un kí ìtẹ̀jáde tí ó ti gbó tàbí tí kò pé kí ó hàn nínú ìwé náà fúnra rẹ̀, láìjẹ́ pé ẹnikẹ́ni ṣí àkọsílẹ̀.
Ìtọ́sọ́nà API pẹ̀lú nílò àdéhùn: ẹ̀rí wo ni ẹnubodè ń gbà, scopes wo ni tọ́kẹ̀n ń gbé àti àwọn ìdánimọ̀ ẹni tó ń pè wo ni a gbà. Ìdáhùn 200 tí ó ní ojú-ìwé ìwọlé kì í ṣe ìpè tí ó ṣàṣeyọrí, nítorí náà yẹ̀wò ara rẹ̀ kì í ṣe kóòdù ipò nìkan.
Ka àṣìṣe náà láti ẹ̀gbẹ́ tí ó tọ́
Apps Script ń jábọ̀ olùgbàlejò tí a kò lè dé bí ìyàsọ́tọ̀ àdírẹ́sì tí kò sí, èyí tí kì í ṣe ìfiránṣẹ́ aṣàwákiri nípa ìsopọ̀ tí a kọ̀. 403 láti ẹnubodè túmọ̀ sí pé ìbéèrè náà dé àti pé a kọ̀ ẹ̀rí tàbí ìlànà kan. Ojú-ìwé ìwọlé HTML túmọ̀ sí pé ìbéèrè náà dé ìpele ìbáraẹnisọ̀rọ̀ tí skripti kò lè parí. Ìkùnà mẹ́ta ọ̀tọ̀ọ̀tọ̀ pẹ̀lú àwọn oníká mẹ́ta ọ̀tọ̀ọ̀tọ̀.
Pa àkọsílẹ̀ skripti náà mọ́ ẹ̀gbẹ́ àbájáde aṣàwákiri dípò kí o fi ọ̀kan rọ́pò èkejì. Ìbéèrè tí ó kù lẹ́yìn náà jẹ́ ìpinnu ìsopọ̀ lasan: fún àyíká yẹn ní ìwọlé tí ó nílò, tàbí gbé àbájáde tí a ṣàkóso dé ọ̀dọ̀ rẹ̀.