Эмне үчүн Apps Script VPN аркылуу ички колдонмого жете албайт
Apps Script Google тармагында иштейт, VPN бар ноутбукта эмес. Маалымат жолун сурам жөнөткөн машина үчүн долбоорлоңуз.
Башкаруу панели ноутбуктагы браузерде жакшы ачылат, бирок ошол эле таблица скрипти дарек жеткиликсиз деген ката менен ишке ашпайт. VPN күйгүзүү же өчүрүү эч нерсени өзгөртпөйт, анткени сурам ноутбуктан такыр чыкпайт. Apps Script Google инфраструктурасында аткарылат жана өз байланышын ошол жерден ачат. Ушул бир факт бүткүл долбоорду аныктайт.
Бир нерсени өзгөртүүдөн мурун эки суроону бөлүңүз: кайсы машина сурам жөнөтөт жана кабыл алуучу кандай ыйгарым укук документин кабыл алат.
Сурам эч качан ноутбукуңузда башталбайт
Браузер өтмөгү ноутбуктан VPN адаптери, ички DNS суффикси аркылуу жеке ички тармакка жөнөтөт. UrlFetchApp Google башкарган хосттон жөнөтөт, ошондуктан ал Google чечүүчүлөрүн, Google чыгуу даректерин көрөт жана сиздин split-tunnel маршруттарыңыздын бирин да көрбөйт. Эки жол таблица документин бөлүшөт, тармактык орунду эмес. Колдонмонун кирүү журналында скрипттин аракети VPN пулунун дареги катары эмес, Google дареги катары көрүнөт, жана бул ала турган эң тез ырастоо.
Ошондуктан жергиликтүү оңдоолор эч нерсе кылбайт. Ноутбукту башка чечүүчүгө багыттоо, VPN кардарын кайра баштоо же hosts кошумча жазуу киргизүү браузердин жолун өзгөртөт жана скрипттин жолун мурдагыдай калтырат.
Бул эмнени жокко чыгарат
Тек ички акыркы чекитке Apps Scriptтен жетүү мүмкүн эмес, ал эми уруксат берилген IP тизмеси бул ордунда кирүүнү көзөмөлдөөнүн алсыз алмаштыргычы. Googleдун чыгуу диапазондору кең, башка кардарлар менен бөлүшүлөт жана аларды бир скриптке байлоо мүмкүн эмес. UrlFetchApp шилтемеси сурамдар Googleдун IP пулунан келет деп көрсөтөт, бул ошол ырастоонун ыйгарым укуктуу версиясы. Ички колдонмону ошол диапазондорго ачуу сиз тиешелүү деп көрсөтө албаган трафикти киргизет.
Браузер сессиялары да ушундай жүрүм-турум көрсөтөт. Ноутбуктун браузериндеги cookie же SSO сессиясы сурам менен бирге жүрбөйт, анткени сурам сессия абалы жок жаңы HTTPS кардар. Браузердеги SSO кайра багыттоого көз каранды нерсе сиздин маалыматыңызда эмес, ошол кайра багыттоодо бүтөт.
Эки иштей турган форма
Биринчи форма скриптке бекитилген API берет. Ички кызматты чакыруучуну аутентификациялаган дарбазанын артына жарыялаңыз, андан кийин скрипт дарбаза кабыл алган ыйгарым укук документин, мисалы кызмат эсебинин токенин сунуштасын. Apps Scriptте бул OAuth2 китепканасы же ScriptApp.getOAuthToken() дегенди билдирет, ошондой эле API тарапта IP тизмесинин ордуна чакыруучунун инсандыктарынын уруксат тизмеси.
Экинчи форма багытты тескери бурат. Ички тапшырма жеке системадан сурап, көзөмөлдөнгөн натыйжаны скрипт окуган Sheet, Cloud Storage объектисине же BigQuery таблицасына жарыялайт. Cloud Run тапшырмасы, жергиликтүү пландаштыргыч же бар ETL кадамы ошол тапшырма боло алат, жана алардын эч бири кирүүчү байланышты кабыл алууга милдеттүү эмес. Андан кийин таблица интерфейстин ордуна маалымат топтомун керектейт.
Кайсы форма жеңери жаңылыкка, талаа деңгээлиндеги көзөмөлгө жана окуучуну кимдин аудиттей алышы керектигине байланыштуу.
Жарыяланган натыйжада эмне болушу керек
Тескери багыттагы агымга так келишим керек: ал ташыган талаалар, жаңыртуу аралыгы, окуучулар тобу жана ички тапшырма ишке ашпаганда эмне болот. Ушул төртөө жок болсо, таблица үнсүз түрдө кечээки сандарды көрсөтөт. Түзүлгөн убакыт белгисинин тилкесин жана саптардын санын кошуңуз, эскирген же жарым-жартылай жарыялоо эч ким журнал ачпастан таблицанын өзүндө көрүнүшү үчүн.
API багытына да келишим керек: дарбаза кандай ыйгарым укук документин кабыл алат, токен кандай scopes алып жүрөт жана кайсы чакыруучу инсандыктарына уруксат берилген. Кирүү барагы бар 200 жообу ийгиликтүү чакыруу эмес, ошондуктан статус кодун гана эмес, денени да текшериңиз.
Катаны туура тараптан окуңуз
Apps Script жеткиликсиз хостту дарек жеткиликсиздигинин өзгөчөлүгү катары билдирет, бул браузердин байланыштан баш тартуу билдирүүсү эмес. Дарбазадан келген 403 сурам жетти жана ыйгарым укук документи же саясат четке кагылды дегенди билдирет. HTML кирүү барагы сурам скрипт бүтүрө албаган интерактивдүү катмарга жетти дегенди билдирет. Үч башка ийгиликсиздик, үч башка жооптуу.
Скрипттин журналын браузердин натыйжасынын жанында кармаңыз, бирин экинчиси менен алмаштырбаңыз. Анда калган суроо кадимки интеграция чечими: ошол чөйрөгө керектүү кирүү мүмкүнчүлүгүн бериңиз же ага көзөмөлдөнгөн натыйжа жеткириңиз.