Google API кілттері құпия емес еді, бірақ кейін Gemini ережелерді өзгертті
Пікірлер
Mewayz Team
Editorial Team
"Дизайн бойынша жалпыға ортақ" қауіпсіздік жауапкершілігіне айналғанда
Жиырма жылға жуық уақыт бойы Google экожүйесіне негізделген әзірлеушілер нәзік, бірақ маңызды сабақ алды: Google API кілттері шын мәнінде құпия емес. YouTube Data API кілтін JavaScript файлына ендірілген болсаңыз, Google дабыл қаққан жоқ. Егер Maps API кілті жалпыға қолжетімді GitHub репозиторийінде көрсетілсе, қауіпсіздік жауабы негізінен иығын көтеру және домен шектеулерін орнату туралы еске салу болды. Бүкіл модель бұл кілттер DevTools қолданбасын ашқан кез келген адамға көрсетілетін клиенттік кодта өмір сүреді деген болжамға негізделген.
Бұл философия ұзақ уақыт бойы мағыналы болды. Домендік шектеулерсіз ашылған Maps API кілті күтпеген шот алуы мүмкін, бірақ ол емделуші жазбаларын бұзбайды немесе банк шотын құртпайды. Жарылыс радиусы қаржылық және басқарылатын болды. Google құралдары — сілтеме беруші шектеулері, IP ақ тізімі, квота шектеулері — әсер етуді толығымен болдырмай, зақымдануды қамту үшін жасалған.
Сосын Егіздер келді және ережелер өзгерді. Мәселе мынада, миллиондаған әзірлеушілер бұл жазбаны алмаған.
Қазір әзірлеушілерді өртеп жіберетін ескі психикалық модель
Google әзірлеушісінің ескі тәжірибесі әдейі рұқсат етілген. Maps JavaScript API кілтін жасаған кезде, құжаттама оны тікелей HTML ішіне тастауға көмектесті. Қауіпсіздік моделі құпиялылық емес, шектеу болды. Сіз өзіңіздің доменіңіздің кілтін құлыптап, квота туралы ескертулерді орнатып, әрі қарай жүресіз. Бұл прагматикалық инженерия болды: клиенттік қолданбалар нақты пайдаланушылардан құпияны сақтай алмайды, сондықтан Google бұл шындықты мойындайтын жүйені құрды.
Бұл Google API кілттері, мысалы, Stripe құпия кілтіне немесе AWS кіру тіркелгі деректеріне қарағанда басқа психикалық санатты иеленетін әзірлеушілер буынын және одан да маңыздысы институционалдық әдеттердің буынын жасады. Сіз Stripe құпия кілтін жалпыға ортақ репоға қоймас едіңіз. Бірақ Карталар кілті? Бұл құпия емес, іс жүзінде конфигурация мәні болды. Көптеген командалар оларды жалпыға қолжетімді конфигурация файлдарында, README файлдарында, тіпті NEXT_PUBLIC_ немесе REACT_APP_ префиксі бар клиенттік ортаның айнымалы мәндерінде де ойланбастан сақтады.
Ашық тіркелгі деректерін анықтау үшін GitHub-ты сканерлеп жатқан қауіпсіздік зерттеушілері Google API кілттерін де басқаша өңдеуді үйренді. Ағып кеткен Карталар кілті қауіптілігі төмен нәтиже болды. Ағып кеткен Gemini кілті - бұл мүлдем басқа әңгіме.
Егіздермен не өзгерді — және бұл не үшін маңызды
Google Gemini API ескі ойын кітабына сәйкес келмейді. Google AI Studio арқылы Gemini API кілтін жасағанда, сіз Карталар немесе YouTube кілтінен түбегейлі басқа тәуекел профилі бар тіркелгі деректерін жасайсыз. Gemini кілттері үлкен тіл үлгісінің қорытындысына қол жеткізуді растайды — Google-дың нақты есептеу ресурстарына ақы төлейтін және сізге бетті қарау арқылы емес, таңбалауыш бойынша есеп беретін қызмет.
Ерекше маңыздысы, Gemini API кілттерінде басқа Google кілттерін ашуға мүмкіндік беретін бірдей кірістірілген доменді шектеу механизмдері жоқ. Жалпыға қолжетімді репозиторийден кілтіңізді тапқан шабуылдаушыға басқа елдегі серверден өз қолданбасын айналдыруға және сіздің квотаны немесе төлем шектеуіңізді тұтынуына жол бермейтін қарапайым "бұны менің веб-сайтымның доменіне құлыптау" басқару құралы жоқ.
Қауіп тек қаржылық емес. Ашық Gemini кілтін зиянды мазмұнды жасау, жылдам инъекциялық шабуылдар жасау немесе Google қызмет көрсету шарттарын бұзатын құралдарды құру үшін пайдалануға болады — барлығы есептік жазбаңызға жіберіледі және жеке басыңызды қадағалайды.
2024 жылы қауіпсіздік зерттеушілері GitHub сайтында мыңдаған ашылған Gemini API кілттерін анықтады, олардың көпшілігі бұрын басқа Google API кілттерін ешбір оқиғасыз орналастырған репозиторийлерде. Әзірлеушілер өздерінің тарихи стандарттарына немқұрайлы қарамады - олар Google оларды қолдануға үйреткен психикалық модельді қолданды. Қоршаған орта әдеттерге қарағанда тез өзгерді.
Кездейсоқ әсердің анатомиясы
Бұл әсерлердің қалай болатынын түсіну - олардың алдын алудың алғашқы қадамы. Сәтсіздік режимдері барлық өлшемдегі командалар арасында айтарлықтай сәйкес келеді:
- Қоршаған ортаның айнымалысын қате жіктеу: Google Maps пернелеріне арналған әзірлеушілер Gemini пернелеріне NEXT_PUBLIC_ немесе VITE_ префиксін қойып, оларды клиенттік кодта бірден көрсетеді.
- Репозиторий журналының ластануы: Кілт конфигурация файлына қосылады, орындалады, содан кейін жойылады — бірақ git тарихын шексіз іздеуге болады. Шабуылшылар осы тарихты өңдеу үшін арнайы truffleHog және gitleaks сияқты құралдарды пайдаланады.
- Дәптер мен прототиптің ағып кетуі: Jupyter жазу кітапшаларында Gemini интеграциясының прототипін жасайтын деректер ғалымдары ұяшық шығыстарына енгізілген кілттермен сол жазу кітапшаларын GitHub жүйесіне итереді.
- CI/CD конфигурациясының қателігі: Репозитарий құпиялары ретінде сақталған кілттер GitHub Actions немесе ұқсас платформаларда жалпыға көрінетін құрастыру журналдарында кездейсоқ жаңғырық береді.
- Үшінші тарап қызметінің кеңеюі: Әзірлеушілер кілттерді аналитиканың бақылау тақталарына, кодсыз құралдарға немесе интеграциялық платформаларға сол платформалардың қауіпсіздік жағдайын қарап шықпай қояды.
- Топтық байланыс арналары: Slack, Discord немесе электрондық пошта арқылы ортақ кілттер айналу кестесінен асып түсетін іздеуге болатын хабарлар журналында аяқталады.
Жалпы мәселе немқұрайлылық емес, бұл контексттің бұзылуы. Бір контексте қауіпсіз болған әрекеттер (Google Maps әзірлеуі) басқа контексте қауіпті (Gemini әзірлеуі) және тіркелгі деректерінің визуалды ұқсастығы айырмашылықты оңай өткізіп жіберуге мүмкіндік береді.
Мөлшерлейтін құпияларды басқару мәдениетін құру
Егіздердің жағдайы - көптеген әзірлеу топтары кейінге қалдырған нәрсе үшін пайдалы мәжбүрлеу функциясы: арнайы тәсілдер емес, нақты құпияларды басқару инфрақұрылымын құру. Кішігірім командалар үшін бұл шамадан тыс инженерия сияқты көрінуі мүмкін, бірақ тіркелгі деректерінің шығыны – есеп айырысу алаяқтығы, есептік жазбаны уақытша тоқтату, деректердің бұзылуы туралы хабарландырулар – бұл дұрыс әрекетті орындау күшінен әлдеқайда асып түседі.
Қазіргі заманғы құпияларды басқару деңгейлік тәсілді ұстанады. Инфрақұрылым деңгейінде HashiCorp Vault, AWS Secrets Manager немесе Google Secret Manager сияқты құралдар автоматты айналдыру мүмкіндіктері бар орталықтандырылған, тексерілетін тіркелгі деректерін сақтауды қамтамасыз етеді. Бұл жай ғана ірі кәсіпорындарға арналған емес — Doppler және Infisical сияқты қызметтер екі немесе үш әзірлеушіден тұратын топтарға бірдей үлгілерді қолжетімді бағамен ұсынады.
💡 DID YOU KNOW?
Mewayz replaces 8+ business tools in one platform
CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.
Start Free →Код деңгейінде тәртіп оңайырақ: тіркелгі деректері ешқашан бастапқы кодты ұстамайды. Толық аялдама. Түсініктеме берілген жолдарда емес, мысал файлдарында емес, шынайы болып шығатын жалған көрінетін мәндері бар сынақ құрылғыларында емес. detect-secrets немесе gitleaks сияқты құралдармен жұмыс істейтін ілмектерді алдын ала орындаңыз, олар қашықтағы репозиторийлерге жеткенге дейін бұзушылықтарды ұстайды. Бұл ілмектерді конфигурациялау үшін бірнеше минут қажет, ал сіздің оқиғаға жауап беру уайымыңыз бірнеше жылдарға созылады.
Күрделі операциялық стектерді басқаратын ұйымдар үшін — CRM жұмыс ағындарынан бастап жалақыны біріктіруге, тұтынушыларға арналған брондау жүйелеріне дейін барлығын басқару — орталықтандырылған тіркелгі деректерін басқару одан да маңыздырақ болады. 207 бизнес модулін бір операциялық қолшатырдың астына біріктіретінMewayz сияқты платформалар осы принцип негізінде құрастырылған: тіркелгі деректері мен API интеграциялары жеке модульдер немесе жеке әзірлеушілер орталары бойынша шашыраңқы емес, платформа деңгейінде басқарылады. Кілтті айналдыру қажет болғанда, ол он жеті түрлі біріктіру нүктесінде емес, бір жерде бір рет орындалады.
Төлемдік шабуыл векторы: Қауіп үлгісін әзірлеушілер жете бағаламау
Қауіпсіздік талқылаулары көбінесе деректерді бұзуға және рұқсатсыз кіруге бағытталған. Gemini әсер ету мәселесі бірдей назар аударуға тұрарлық үшінші қауіп үлгісін қосады: ауқымда есеп айырысу алаяқтығы.
Үлкен тіл үлгісінің қорытындысы қымбат. GPT-4 және Gemini Ultra таңбалауыштарын әрқайсысы центтен бөледі, бірақ масштабта — мыңдаған сұраулар, миллиондаған таңбалауыштар — бұл фракциялар мыңдаған долларға дейін тез қосылады. Ашық AI API кілттерін тапқан шабуылдаушылар деректеріңізді міндетті түрде қажет етпейді. Олар тегін есептеуді қалайды. Олар сіздің тіркелгі деректеріңізді жеке AI қызметтерін іске қосу, қорытынды жасау мүмкіндігін қайта сату немесе қолданбаларын стресс-сынау үшін пайдаланады — барлығы шот сізге түседі.
Бір әзірлеуші жалпыға ортақ репозиторийде алты сағаттан аз уақыт бойы ашылған Gemini кілтінен 23 000 долларлық купюраның оянғанын құжаттады. Шабуылдаушы Google алаяқтықты анықтағанша, өнімділігі жоғары генерациялау тапсырмаларын үздіксіз орындап, пайдалануды бірден автоматтандырды. Ұзақ дау процесінен кейін әзірлеуші ақыр соңында төлемдерді қайтарып алды, бірақ есептік жазба осы кезеңде уақытша тоқтатылып, өндірістік қызметтерді алып тастады.
Сондықтан шот ұсыну ескертулері мен квота шектеулері құпияларды дұрыс басқаруды алмастырмайды — олар сізге ешқашан қажет емес деп үміттенетін соңғы қорғаныс желісі. AI API есептік жазбаларында ай сайынғы шығындарға қатаң шектеулер қою қазірдің өзінде өте маңызды, бірақ нақты қорғаныс бұл тіркелгі деректерінің бірінші кезекте ешқашан ағып кетпеуін қамтамасыз ету болып табылады.
Өтпелі топтардың практикалық қадамдары
Егер сіздің командаңыз ескі психикалық үлгі бойынша Google API интеграциясын жасап жатса және қазір стекке Gemini қосса, міне, нақты түзетуді тексеру тізімі:
- Бар репозиторийлерді дереу тексеріңіз. Тек ағымдағы HEAD емес, толық гит тарихыңызға қарсы truffleHog немесе gitleaks іске қосыңыз. Әсіресе бұрын Google API кілтін пайдаланған кез келген репозиторийге назар аударыңыз.
- Барлық ашық кілттерді бұрыңыз. Егер Gemini кілті міндеттемеде бұрыннан пайда болса, оны бұзылған деп есептеңіз. Оны жойып, жаңасын жасаңыз. Оны біреу "шынымен" тапты ма, жоқ па деп бағалауға тырыспаңыз.
- Сканерлеуді алдын ала орындаңыз. Құпия анықтау ілмектерін әрбір әзірлеушінің құрылғысына және CI/CD құбырларына айналып өтпейтін қақпа ретінде орнатыңыз.
- Негізгі тізімді жасаңыз. Қандай қызметтерде қандай тіркелгі деректері бар екенін, олардың кімге тиесілі екенін, олар соңғы рет қашан ауыстырылғанын және қайда пайдаланылғанын біліңіз. Электрондық кесте - жақсы бастау нүктесі; құпиялар менеджері тағайындалған орын.
- Төлем туралы ескертулер мен қатаң шектеулерді орнатыңыз. Әрбір AI API есептік жазбасында ескертулерді күтілетін ай сайынғы шығындарыңыздың 50% және 80% теңшеңіз және апатты төлем оқиғаларын болдырмайтын қатаң шектеулерді орнатыңыз.
- Жаңа психикалық модельді нақты құжаттаңыз. Gemini API кілттері төлем процессорының құпиялары сияқты өңдеуді қажет ететін жоғары сезімталдық тіркелгі деректері екенін нақты көрсету үшін топтың жұмысқа кірісу материалдары мен инженерлік нұсқаулықты жаңартыңыз.
Платформаға тәуелді бизнеске арналған кеңірек сабақ
Егіздердің жағдайы үшінші тарап платформаларымен терең интеграцияланған кез келген бизнеске әсер ететін үлгіні көрсетеді: платформалар дамиды және қауіпсіздік талаптары олармен бірге дамиды, бірақ бұл платформаларды пайдаланатын командалардың институционалдық әдеттері жиі қарқынмен жүрмейді. Кеше қауіпсіз болған нәрсе бүгін қауіпті және бұл екі мемлекеттің арасындағы алшақтық бұзушылықтар орын алады.
Бұл әсіресе күрделі операциялық стектерді басқаратын компаниялар үшін өткір. Тұтынушыларға қызмет көрсету, аналитика, мазмұнды құру және өнім ұсыныстары бойынша AI мүмкіндіктерін пайдаланатын компанияда Gemini интеграциясы ондаған түрлі контексттерде болуы мүмкін - егер тіркелгі деректері сәйкес келмейтін болса, олардың әрқайсысы ықтимал әсер ету нүктесі болып табылады. Шешім жеке әзірлеушілердің жақсы әдеттері ғана емес; бұл архитектуралық. Тіркелгі деректеріне кіру платформа деңгейінде орталықтандырылған, тексерілген және басқарылуы керек.
Қазіргі бизнес операциялық жүйелері осыны ескере отырып жасалған. Mewayz өзінің 207 модульдік экожүйесінде интеллектуалды CRM жұмыс үрдістерінен автоматтандырылған аналитикаға дейін AI мүмкіндіктерін біріктірген кезде, тіркелгі деректерін басқару қолданба деңгейінде емес, инфрақұрылым деңгейінде өңделеді. Жеке модуль әзірлеушілері өңделмеген API кілттерін өңдемейді; олар айналу саясаттарын, аудитке қол жеткізуді және бірдеңе дұрыс болмаса, жарылыс радиусын шектейтін абстракциялық қабаттар арқылы мүмкіндіктерге қол жеткізеді. Бұл Егіздер дәуірінің архитектурасын талап етеді: жақсы әдеттер ғана емес, дұрыс әдетті жалғыз қолжетімді нұсқаға айналдыратын жақсы жүйелер.
Google Maps және YouTube үшін рұқсат беретін API кілт үлгісін жасауда қателеспеді. Бұл үлгі сол қызметтерге сәйкес болды. Бірақ API мүмкіндіктері мен құнының профильдері күрт дамып келе жатқандықтан және AI API интерфейстері сол эволюцияның ең күрт бұрылу нүктесін білдіретіндіктен, бүкіл сала өзінің әдепкі параметрлерін қалпына келтіруі керек. Бұл ортада дамитын әзірлеушілер ескі ережелерді жақсы меңгергендер емес, ережелер түбегейлі өзгергенін мойындайтындар болады.
Жиі қойылатын сұрақтар
Неліктен Google API кілттері тарихта жалпыға қолжетімді деп саналды?
Google өзінің көптеген API интерфейстерін — Maps, YouTube, Places — клиенттік пайдалану үшін әзірледі, яғни кілттер кез келген адамға көрінетін алдыңғы кодқа әдейі ендірілген. Қауіпсіздік моделі кілт құпиялылығынан гөрі рұқсат етілген домен тізімдері және сілтеме тексерулері сияқты пайдалану шектеулеріне сүйенді. Көптеген жылдар бойы ашық кілт дереу айналдыруды қажет ететін маңызды осалдық емес, конфигурация мәселесі болып саналды.
Google Gemini API кілттерін ұсынғанда не өзгерді?
Бұрынғы Google API интерфейстерінен айырмашылығы, Gemini API кілттері дәстүрлі құпиялар сияқты жұмыс істейді — біреуін ашу төлем есептік жазбаңыздан рұқсат етілмеген төлемдерге, үлгіні теріс пайдалануға немесе сізді құтқару үшін кірістірілген домен шектеуінсіз квотаның таусылуына әкелуі мүмкін. Ауысым әзірлеушілер енді Gemini кілттерін AWS тіркелгі деректері немесе Stripe құпия кілттері сияқты тәртіппен өңдеуі керек, оларды сервер жағында және ешқашан клиентке бағытталған кодта сақтамауы керек дегенді білдіреді.
Қазіргі таңда әзірлеушілер AI қызметтеріне арналған API кілттерін қалай қауіпсіз басқаруы керек?
Ең жақсы тәжірибе - барлық AI API кілттерін ешқашан нұсқамен басқарылатын файлдарда немесе клиент бумаларында емес, серверде орта айнымалылары ретінде сақтау. Құпиялар менеджерін пайдаланыңыз, пернелерді үнемі айналдырыңыз және провайдер деңгейінде шығыс шектеулерін орнатыңыз. Mewayz сияқты платформалар — app.mewayz.com сайтында қолжетімді айына $19 болатын 207 модульдік іскери операциялық жүйе — командалар қызметтерде кілттерді қолмен ауыстырмайтындай етіп, өз инфрақұрылымында API тіркелгі деректерін басқаруды басқарады.
Егер мен Gemini API кілтін кездейсоқ ашқан болсам, не істеуім керек?
Басқа ешнәрсе жасамас бұрын Google Cloud Console арқылы бұзылған кілтті дереу қайтарып алып, ауыстыруды жасаңыз. Кілттің жиналғанын көрсетуі мүмкін күтпеген пайдалану өсімдері үшін төлем бақылау тақтасын тексеріңіз. Содан кейін код базасын, CI/CD ортасының айнымалы мәндерін және басқа ағып кеткен тіркелгі деректері үшін кез келген жалпы репозитарийлерді қарап шығыңыз. Оқиғаға кез келген ашық төлем тіркелгі деректеріндей әрекет етіңіз — ол табылды деп есептеңіз және сәйкес әрекет етіңіз.
We use cookies to improve your experience and analyze site traffic. Cookie Policy