Ограничение ключей API при использовании Google Maps Platform

29 August 2019
7 минут

Лучшие практики использования Google Maps Platform – Ограничения ключей API

Сегодня мы начинаем серию статей о передовых методах использования Google Maps Platform для бизнеса и организаций.

Мировые компании вкладывают достаточно времени и энергии на создание впечатлений и опыта, который получают их пользователи и клиенты, и в этой статье мы покажем необходимые инструменты безопасности для создания Ваших продуктов, в которых используются карты Google Maps. Вы узнаете, что нужно сделать, чтобы контролировать и предотвращать любое нежелательное или непредвиденное использование проекта Google Maps, находящегося в консоли GCP – Google Cloud Platform. Сегодняшняя тема:

Ограничение ваших ключей API обеспечения эффективного и безопасного использования Google Maps Platform.

Для всех API и SDK Google Maps Platform, кроме URL-адресов требуется отправлять ключ API со всеми обращениями. Ключи API создаются в консоли Google Cloud Platform и выступают в качестве уникальных идентификаторов, которые аутентифицируют запросы, совершаемые Вами в Google Maps Platform, тем самым гарантируют, что они выставлены на счет правильной учетной записи. Ваши ключи API – это основной способ проверки Вашего доступа к API и SDK Google Maps Platform.

Зачем нужно ограничивать свои ключи API?

Ограничение ключей API помогает обеспечить безопасность учетной записи Google Maps Platform. Так же, как и ключи от Вашего дома или автомобиля, важно защитить API, чтобы они использовались только людьми и только так, как Вы планируете. Мы настоятельно рекомендуем Вам ограничивать свои ключи API при создании их в консоли Google Cloud. Если же понадобится – Вы всегда можете изменить ограничения позже.

Что такое ограничение ключа API?

Ограничения ключа API – это настройки, применяемые к ключу API, которые ограничивают использование приложениями Ваших API и SDK с этим ключом. Например, Вы можете указать, что ключ API можно использовать только для обращений из приложения Android с именем пакета вашего приложения или из API геокодирования из сервера с IP-адресом, совпадающим с сервером, на котором работает Ваш backend сервис. 

Относитесь к безопасности так же, как Вы используете разные пароли для разных приложений. Использование одного пароля для нескольких веб-сайтов означает, что потенциально украденный пароль обеспечит злоумышленнику доступ ко многим вещам. Ограничения API-ключей позволяют Вам ограничивать то, для чего может использоваться ключ, минимизируя Вашу уязвимость, на случай, если Ваш ключ когда-то был скомпрометирован.

Какие типы ограничений ключа API доступны?

Существует два типа ограничений ключа API: ограничения API и ограничения приложения. Ограничения приложения сужают варианты использование ключа API определенным веб-сайтом, веб-сервером или приложением. Платформа Google Maps поддерживает четыре типа ограничений приложений:

HTTP-referrers: предназначены для ключей, используемых на веб-сайтах и ​​в веб-приложениях и ограничивают использование одним или несколькими URL-адресами. Этот тип ограничения позволяет устанавливать использование для определенного домена, страницы или набора страниц на Вашем веб-сайте.

IP-адреса: ограничивают использование одним или несколькими IP-адресами и предназначены для защиты ключей в запросах на стороне сервера, таких как вызовы с веб-серверов и задания типа cron.

Ограничение приложения Android: ограничивает использование вызовов из приложения Android с указанным именем пакета.

Ограничение приложения iOS: ограничивает использование вызовами из приложения iOS с указанным идентификатором пакета.

Ограничения API лимитируют использование ключа API одним или несколькими API или SDK. Например, если Ваше мобильное приложение использует только Maps SDK для Android и Places SDK для Android, Вы можете ограничить ключ API только этими двумя SDK. Вы также можете установить ключ API, чтобы разрешить доступ к любому количеству API и SDK, но мы все же настоятельно рекомендуем ограничить список только теми, которые Вам действительно нужны.

Каковы наилучшие практики для применения ограничений ключа API?

Вот несколько простых рекомендаций, которые Вы можете использовать, чтобы определить, какие ограничения API-ключей Вы должны использовать и как их использовать в интеграциях с Google Maps Platform:

Используйте отдельный ключ API для каждого источника и лимитируйте каждый из них ограничением приложения. Например, создайте отдельные ключи API для приложения Android и веб-приложения и ограничьте их приложением Android и приложением HTTP referer соответственно.

Примените лимит приложения и одно или несколько ограничений API ко всем Вашим ключам API. Это обеспечит максимальную безопасность и позволит использовать Ваш ключ только теми приложениями, которым разрешено использовать данные API или SDK.

Никогда не используйте один и тот же ключ API для клиентских (мобильных приложений, веб-приложений) и серверных приложений.

Как можно ограничить свои ключи API?

Ограничить ключ API на самом деле быстро и просто. Это можно сделать в любое время на вкладке учетных данных на странице APIs & Services в консоли Google Cloud Platform. Но, как упоминалось ранее, мы рекомендуем Вам применить некоторые ограничения к каждому ключу, который Вы генерируете при его создании. Чтобы узнать, как ограничить ключ API, следуйте инструкциям в документах Google Maps Platform или посмотрите это видео.

Как распределить доступ к проекту между различными участниками?

GCP использует учетные записи Google для аутентификации и управления доступом. Ваш технический персонал, внутренние разработчики или внешние подрядчики должны иметь учетные записи Google для доступа к Google Cloud Platform. Мы рекомендуем использовать полностью управляемые учетные записи Google G Suite, привязанные к Вашему корпоративному доменному имени через напрямую или через Cloud Identity. Таким образом, Ваши разработчики, финансы, финансисты, бухгалтеры смогут получить доступ к GCP, используя свои корпоративные идентификаторы электронной почты, а Ваши администраторы смогут просматривать и контролировать учетные записи через консоль администратора, одновременно предоставляя различные права доступа к проекту Google Maps Platform.

Компании и разработчики создают невероятные вещи с помощью Google Maps Platform и наша цель в Techsvit – сделать все возможное, чтобы Вы были успешными. Ограничение Ваших ключей API – это один из простых способов обеспечить безопасность Вашей учетной записи и ограничить несанкционированное использование, в случае, если Ваш ключ будет скомпрометирован.

Для получения дополнительной информации и консультации обращайтесь к нашей команде Google Cloud, состоящей из сертицированых Product и Sales Manager-ов, а также Google Maps Developers. Techsvit, как партнер реселлер, предоставляет услуги разработки и подключения к Google Cloud и Google Maps Platform в Украине, Польше, Беларуси, странах Центральной и Востночной Европы, СНГ и Ближнего Востока. Купить и оплатить продукты Google Cloud можно по безналичному расчету с получением расходных, бухгалтерских и юридических документов. 

 

+ Больше публикаций

Тоже будет интересно

Все публикации