Clave de API personalizada del motor de búsqueda de Google: ¿es confidencial?

2

Normalmente, yo diría que sí, las claves de API deben mantenerse en secreto, y la consola de API de Google incluso lo dice. Sin embargo, solo estoy haciendo una llamada ajax get y toda la información está clara en mi página para construir esa consulta, incluyendo mi clave api y cx (ID de motor de búsqueda personalizado). Presumiblemente, alguien más puede usar mis credenciales para hacer consultas contra mi límite diario.

Google le permite especificar una lista blanca de remitentes que pueden usar su cse por dominio. ¿Eso mitiga un poco este problema? Si solo están usando HTTP_REFERRER, ¿se puede falsificar?

¿Alguna idea?

    
pregunta D.W. 06.06.2012 - 03:15
fuente

1 respuesta

6

Google usa la clave de la API para identificar quién envía esas solicitudes. Google impondrá una cuota. Como se identificó correctamente, si Google recibe demasiadas solicitudes con esa clave de API, incluirán en la lista negra la clave de API. Si eso sucede, su propio sitio / aplicación dejará de funcionar.

Por lo tanto, existen riesgos al dejar la clave de API en el claro de su página. Estos riesgos son un tanto modestos: alguien que obtiene la clave API no obtiene la raíz de sus sistemas, pero podría terminar haciendo que su aplicación deje de funcionar.

Si este riesgo le molesta, entonces no ponga la clave API en su página web. En su lugar, haga que el cliente emita una solicitud AJAX a su servidor, y luego haga que el servidor emita la solicitud a Google y devuelva los resultados al cliente. De esta manera, la clave de la API de Google nunca se expone al cliente.

La verificación del encabezado del Referer evita que alguien más copie su clave de API y la coloque en su propia página web y use Javascript para consultar a Google. Sin embargo, no les impide copiar su clave de API y utilizarla en las solicitudes que inician desde sus propias máquinas. (Si usan curl o alguna otra biblioteca similar en su propia máquina, pueden falsificar el encabezado del Referer y hacer que diga lo que quieran. Por lo tanto, la verificación del Referer no ayuda a evitar este escenario. Solo evita que otros incrusten la clave API en su página web y usándolo en Javascript que se ejecuta en el navegador de las personas que visitan su página web.)

    
respondido por el D.W. 06.06.2012 - 03:34
fuente

Lea otras preguntas en las etiquetas