Ключі Google API не були секретами, але потім Gemini змінила правила
Дізнайтеся, як Gemini змінила правила безпеки ключів Google API. Що потрібно знати розробникам про захист ключів API, які колись вважалися безпечними.
Mewayz Team
Editorial Team
Коли «публічне за проектом» стає зобов’язанням безпеки
Протягом майже двох десятиліть розробники, які будували екосистему Google, засвоїли непомітний, але важливий урок: ключі Google API насправді не є секретами. Якщо ви вставили ключ API даних YouTube у файл 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 — це зовсім інша розмова.
Що змінилося з Близнюками — і чому це важливо
💡 ВИ ЗНАЛИ?
Mewayz замінює 8+ бізнес-інструментів в одній платформі
CRM · Виставлення рахунків · HR · Проєкти · Бронювання · eCommerce · POS · Аналітика. Безкоштовний план назавжди.
Почати безкоштовно →Google Gemini API не відповідає старій інструкції. Коли ви створюєте ключ API Gemini через Google AI Studio, ви створюєте облікові дані з принципово іншим профілем ризику, ніж ключ Карт або YouTube. Ключі Gemini автентифікують доступ до висновку великої мовної моделі — послуги, яка коштує Google реальних обчислювальних ресурсів і яка виставляє вам рахунок за маркером, а не за переглядом сторінки.
Більш критично те, що ключі Gemini API не мають тих самих вбудованих механізмів обмеження домену, які дозволяли вижити іншим ключам Google. Немає простого елемента керування «заблокувати це в домені мого веб-сайту», який би перешкодив зловмиснику, який знайшов ваш ключ у загальнодоступному сховищі, створити власну програму та використати вашу квоту — або ліміт виставлення рахунків — із сервера в іншій країні.
Небезпека не тільки фінансова. Розкритий ключ Gemini можна використовувати для генерування шкідливого вмісту, миттєвих ін’єкційних атак або створення інструментів, які порушують умови використання Google — усе це виставляється на ваш обліковий запис і відстежується до вашої особи.
У 2024 році дослідники безпеки виявили тисячі відкритих ключів API Gemini лише на GitHub, багато з них у сховищах, де раніше без жодних інцидентів розміщувалися інші ключі API Google. Розробники не були безрозсудними за власними історичними стандартами — вони застосовували ментальну модель, якою їх навчив використовувати сам Google. Середовище змінювалося швидше, ніж звички.
Анатомія випадкового опромінення
Розуміння того, як відбувається таке опромінення, є першим кроком до його запобігання. Режими відмови є
Frequently Asked Questions
Why were Google API keys historically considered safe to expose publicly?
Google designed many of its APIs — Maps, YouTube, Places — for client-side use, meaning keys were intentionally embedded in front-end code visible to anyone. The security model relied on usage restrictions like domain allowlists and referrer checks rather than key secrecy. For years, an exposed key was considered a configuration issue, not a critical vulnerability requiring immediate rotation.
What changed when Google introduced Gemini API keys?
Unlike legacy Google APIs, Gemini API keys function more like traditional secrets — exposing one can result in unauthorized charges to your billing account, model abuse, or quota exhaustion with no built-in domain restriction to save you. The shift means developers must now treat Gemini keys with the same discipline as AWS credentials or Stripe secret keys, storing them server-side and never in client-facing code.
How should developers securely manage API keys for AI services today?
Best practice is to store all AI API keys as environment variables on the server, never in version-controlled files or client bundles. Use a secrets manager, rotate keys regularly, and set spending limits at the provider level. Platforms like Mewayz — a 207-module business OS at $19/mo available at app.mewayz.com — handle API credential management within their infrastructure so teams aren't manually juggling keys across services.
What should I do if I have already accidentally exposed a Gemini API key?
Revoke the compromised key immediately through Google Cloud Console and generate a replacement before doing anything else. Audit your billing dashboard for unexpected usage spikes that could indicate the key was harvested. Then review your codebase, CI/CD environment variables, and any public repositories for other leaked credentials. Treat the incident as you would any exposed payment credential — assume it was found and act accordingly.
Related Posts
Спробуйте Mewayz безкоштовно
Універсальна платформа для CRM, виставлення рахунків, проектів, HR та іншого. Без кредитної картки.
Get more articles like this
Weekly business tips and product updates. Free forever.
Ви підписані!
Почніть керувати своїм бізнесом розумніше вже сьогодні.
Приєднуйтесь до 30,000+ компаній. Безплатний тариф назавжди · Без кредитної картки.
Готові застосувати це на практиці?
Приєднуйтесь до 30,000+ бізнесів, які використовують Mewayz. Безкоштовний тариф назавжди — кредитна карта не потрібна.
Почати пробний період →Схожі статті
Hacker News
Пастка самодопомоги: чого мене навчили 20 років «оптимізації»
Mar 8, 2026
Hacker News
OpenBSD на SGI: Історія про американські гірки
Mar 8, 2026
Hacker News
Relax NG — це мова схем для XML (2014)
Mar 8, 2026
Hacker News
Переліцензування за допомогою AI-Assisted Rewrite
Mar 8, 2026
Hacker News
Ти щойно ожив
Mar 8, 2026
Hacker News
L у "LLM" означає брехня
Mar 8, 2026
Готові вжити заходів?
Почніть свій безкоштовний пробний період Mewayz сьогодні
Бізнес-платформа все в одному. Кредитна картка не потрібна.
Почати безкоштовно →14-денний безкоштовний пробний період · Без кредитної картки · Скасуйте в будь-який час