Usa claves de API con la API de Distance Matrix

Los productos de Google Maps Platform están protegidos contra un uso no autorizado porque restringen las llamadas a la API a aquellas que proporcionan credenciales válidas de autenticación. Estas credenciales se indican como una clave de API, es decir, una string alfanumérica única que asocia tu cuenta de facturación de Google con tu proyecto y con la API o el SDK específicos.

En esta guía, se muestra cómo crear, restringir y usar tu clave de API en Google Maps Platform.

Antes de comenzar

Antes de comenzar a usar la API de Distance Matrix, debes tener un proyecto con una cuenta de facturación y la API de Distance Matrix habilitada. Si deseas obtener más información, consulta Set up in Cloud Console.

Cómo crear claves de API

La clave de API es un identificador único que se utiliza para autenticar solicitudes asociadas a tu proyecto con fines de uso y facturación. Debes tener, al menos, una clave de API asociada a tu proyecto.

Para crear una clave de API, sigue estos pasos:

Consola

  1. Ve a la página Google Maps Platform > Credenciales.

    Ir a la página Credenciales

  2. En la página Credenciales, haz clic en Crear credenciales > Clave de API.
    El diálogo Se creó la clave de API mostrará la clave de API que acabas de crear.
  3. Haz clic en Cerrar.
    La nueva clave de API aparecerá en la página Credenciales debajo de Claves de API.
    (Recuerda restringir la clave de API antes de utilizarla en producción).

SDK de Cloud

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Obtén más información sobre el SDK de Google Cloud, la instalación del SDK de Cloud y los siguientes comandos:

Cómo restringir las claves de API

Google recomienda que restrinjas las claves de API limitando su uso solo a aquellas APIs que sean necesarias para tu aplicación. La restricción de las claves de API agrega seguridad a tu aplicación, ya que la protege de solicitudes no autorizadas. Para obtener más información, consulta Prácticas recomendadas sobre la seguridad de la API.

Para restringir una clave de API, sigue estos pasos:

Consola

  1. Ve a la página Google Maps Platform > Credenciales.

    Ir a la página Credenciales

  2. Selecciona la clave de API para la que deseas establecer una restricción. Aparecerá la página de propiedades de la clave de API.
  3. En Restricciones de clave, establece las siguientes restricciones:
    • Restricciones de aplicaciones:
      1. Para aceptar las solicitudes de la lista de direcciones IP de servidor web que proporcionas, selecciona Direcciones IP (servidores web, trabajos cron, etc.) en la lista de Restricciones de aplicaciones. Especifica una o más direcciones IPv4 o IPv6, o bien una subred con notación CIDR. Las direcciones IP deben coincidir con la dirección de origen que observan los servidores de Google Maps Platform. Si usas la traducción de direcciones de red (NAT), por lo general, esto correspondería a la dirección IP pública de tu máquina.
    • Restricciones de API:
      1. Haz clic en Restringir clave.
      2. Selecciona Distance Matrix API en el menú desplegable Seleccionar API. Si la API de Distance Matrix no aparece en la lista, debes enable.
  4. Para finalizar los cambios, haz clic en Guardar.

SDK de Cloud

Enumera las claves existentes.

gcloud services api-keys list --project="PROJECT"

Borra las restricciones que existen sobre la clave existente.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

Establece restricciones nuevas sobre la clave existente.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api-target="distance-matrix-backend.googleapis.com"
    --allowed-ips="IP_ADDRESS"

Obtén más información sobre el SDK de Google Cloud, la instalación del SDK de Cloud y los siguientes comandos:

Cómo agregar la clave de API a tu solicitud

Debes incluir una clave de API con cada solicitud que hagas a la API de Distance Matrix. En el siguiente ejemplo, reemplaza YOUR_API_KEY por tu clave de API.

https://maps.googleapis.com/maps/api/distancematrix/json?origins=Seattle&destinations=San+Francisco&key=YOUR_API_KEY

Se requiere HTTPS para las solicitudes que usan una clave de API.