Para acceder a un programa o una apli­ca­ción a través de una interfaz de pro­gra­ma­ción, se necesita una API key o clave API, esto es, una clave única formada por una cadena de ca­ra­c­te­res secretos que autoriza el acceso. Con una clave, la API reconoce a los usuarios au­to­ri­za­dos y protege los programas.

De­fi­ni­ción de API key

Las in­te­r­fa­ces de pro­gra­ma­ción, más conocidas como API (Ap­pli­ca­tion Pro­gra­m­mi­ng Interface), sirven para conectar e in­te­r­ca­m­biar fu­n­cio­na­li­da­des entre dos programas. Una API ofrece a los pro­gra­ma­do­res, apli­ca­cio­nes y proyectos, la po­si­bi­li­dad de in­ter­ac­tuar con otro servicio o programa. De este modo, a través de una API puede co­n­tro­lar­se quién puede realizar so­li­ci­tu­des entre API, quién recibe au­to­ri­za­ción y qué formatos de datos se utilizan.

El acceso se controla mediante claves de au­te­n­ti­ca­ción únicas de­no­mi­na­das API keys o claves API. Las API keys pueden so­li­ci­tar­se a través de los ope­ra­do­res API co­rre­s­po­n­die­n­tes, entre otros. Si los usuarios o las apli­ca­cio­nes disponen de la clave co­rre­s­po­n­die­n­te, el servidor API concede el acceso.

¿Cómo funciona una API key?

Las claves API funcionan de forma similar a las co­n­tra­se­ñas. En cuanto una API “llama” a otra y solicita acceso, la au­to­ri­za­ción de acceso se concede mediante el in­te­r­ca­m­bio de la clave. La API key se asigna al servicio o programa que llama y se transmite al servidor API. Si el servidor API confirma la au­te­n­ti­ci­dad de la API key, se concede el acceso al programa o a de­te­r­mi­na­das fu­n­cio­na­li­da­des. Además, las API keys pueden uti­li­zar­se para realizar acciones entre apli­ca­cio­nes a través de las in­te­r­fa­ces API.

Las reglas de acceso, los formatos de datos o el alcance de las acciones son definidos por los ope­ra­do­res de la API. De este modo, es posible de­te­r­mi­nar exac­ta­me­n­te qué tipo de usuarios o proyectos reciben permisos de acceso y qué acciones están pe­r­mi­ti­das a través de las in­te­r­fa­ces de pro­gra­ma­ción. Las API keys también pueden anclarse di­re­c­ta­me­n­te en lenguajes de pro­gra­ma­ción como Ja­va­S­cri­pt o Python. Por tanto, los usuarios o servicios deben solicitar la clave en Ja­va­S­cri­pt al servidor API co­rre­s­po­n­die­n­te.

¿Para qué se utilizan las API keys?

Las API keys se utilizan pri­n­ci­pa­l­me­n­te para las si­guie­n­tes funciones:

  • Ide­n­ti­fi­ca­ción: una clave API puede ide­n­ti­fi­car las API, proyectos o servicios que llaman al servidor API. Esto permite registrar quién solicita acceso, lo recibe o se le deniega.
  • Au­te­n­ti­ca­ción: mediante el in­te­r­ca­m­bio de la API key, es posible comprobar si los clientes están realmente au­to­ri­za­dos a acceder. También se comprueba si la API so­li­ci­ta­da está activa.
  • Au­to­ri­za­ción: tras ide­n­ti­fi­car el proyecto o servicio, las reglas de acceso al servidor API de­te­r­mi­nan en qué medida se concede el acceso.

¿Cómo solicitar una API key?

La forma de solicitar o de que se te asignen claves API depende de la API a la que desees co­ne­c­tar­te. Las normas de acceso varían en función del tipo de operador de API. Sin embargo, por regla general, la asi­g­na­ción de API keys se lleva a cabo de la siguiente manera:

  • Se accede a la página del proveedor cuya API se va a utilizar para el acceso y se inicia sesión en la página del de­sa­rro­lla­dor.
  • Se se­le­c­cio­nan API keys para proyectos exi­s­te­n­tes o para nuevos proyectos.
  • Se puede asignar un nombre a la clave API para una mejor asi­g­na­ción.
  • Después de crear y asignar la API key, se puede insertar en la página web o app para el posterior acceso y tra­n­s­fe­re­n­cia de datos. Para llamadas po­s­te­rio­res, el servidor API re­co­no­ce­rá la apli­ca­ción que llama a través de la API key.
Consejo

¿Quieres saber cómo solicitar una API key para apli­ca­cio­nes como ChatGPT, Google Maps o YouTube? Echa un vistazo a nuestras in­s­tru­c­cio­nes:

Ventajas de las API keys

La principal ventaja de las claves API es permitir la au­te­n­ti­ca­ción sencilla y rápida de los derechos de acceso de usuarios, servicios o programas. Esto sucede sobre todo cuando se conectan di­fe­re­n­tes apli­ca­cio­nes para in­te­r­ca­m­biar datos o realizar acciones entre programas. Las claves de au­te­n­ti­ca­ción también ofrecen ventajas a los pro­gra­ma­do­res que crean una apli­ca­ción y acceden a un programa a través de la API. Los se­r­vi­do­res API pueden utilizar claves similares a co­n­tra­se­ñas para ga­ra­n­ti­zar que los usuarios ma­li­n­te­n­cio­na­dos no puedan acceder al sistema.

Las si­guie­n­tes funciones son pro­po­r­cio­na­das por las API keys para mejorar y hacer más complejos los procesos de au­te­n­ti­ca­ción:

  • Registro de API, programas, servicios o proyectos que desean acceder a una API es­pe­cí­fi­ca.
  • Los se­r­vi­do­res y ope­ra­do­res de la API definen los derechos de acceso para de­te­r­mi­nar qué APIs pueden autorizar qué tipo de acciones y accesos.
  • Resumen de los accesos an­te­rio­res pe­r­mi­ti­dos o denegados.
  • Las claves API pro­po­r­cio­nan seguridad adicional al ser claves únicas, de un solo uso y secretas.
  • Permiten bloquear el tráfico no ide­n­ti­fi­ca­ble en la red.
  • Pueden limitar el número de llamadas a una API y controlar así la carga.
  • Permiten filtrar mejor de­te­r­mi­na­dos tipos o patrones de acceso y asi­g­nar­los a API keys es­pe­cí­fi­cas.

¿Qué papel de­sem­pe­ñan las API keys en la seguridad?

Las API keys por sí solas no son una medida de seguridad su­fi­cie­n­te, sino que pro­po­r­cio­nan un nivel adicional de seguridad de acceso. Dado que las claves API son propiedad de los clientes de forma similar a las co­n­tra­se­ñas, existe el riesgo de que puedan ser robadas por hackers. Al igual que una co­n­tra­se­ña robada, las API keys robadas pueden conducir rá­pi­da­me­n­te al acceso de terceros a un sistema. Las API keys suelen pe­r­ma­ne­cer visibles en los registros de los se­r­vi­do­res y pueden dar acceso a los hackers bajo la apa­rie­n­cia de un acceso su­pue­s­ta­me­n­te au­to­ri­za­do. A menudo son un factor im­po­r­ta­n­te en los ci­ber­ata­ques, como los ataques en DDoS, los ataques man-in-the-middle o las in­ye­c­cio­nes.

Con las API keys deben re­s­pe­tar­se los si­guie­n­tes aspectos de seguridad:

  • Las claves API no ide­n­ti­fi­can a usuarios concretos, sino solo a las APIs o los programas que solicitan acceso.
  • A di­fe­re­n­cia de las co­n­tra­se­ñas, las API keys no suelen al­ma­ce­nar­se cifradas en el lado del cliente y pe­r­ma­ne­cen visibles en los registros del servidor.
  • Al igual que las co­n­tra­se­ñas inseguras, las API keys pueden ser robadas por hackers para acceder a una apli­ca­ción.
API gratuita de IONOS
Gestione sus productos de Hosting a través de nuestra Interfaz de Pro­gra­ma­ción de Apli­ca­cio­nes (API)
  • Registros DNS
  • Ad­mi­ni­s­tra­ción SSL
  • Do­cu­me­n­ta­ción API

¿Cómo utilizar las claves API de forma segura?

Dado que los programas in­te­r­ca­m­bian datos sensibles a través de las APIs y conceden acceso a apli­ca­cio­nes internas, es im­po­r­ta­n­te contar con una seguridad fiable en su uso. Algunas medidas de seguridad que ayudan a la pro­te­c­ción de las APIs incluyen:

  • El acceso a las API keys al­ma­ce­na­das en el lado del cliente debe pe­r­ma­ne­cer re­s­tri­n­gi­do y protegido.
  • Utilizar una API key distinta para cada proyecto y apli­ca­ción.
  • Las API keys que ya no se necesiten deben eli­mi­nar­se.
  • Las API keys al­ma­ce­na­das deben cifrarse como cre­de­n­cia­les en reposo para evitar su robo.
  • Las API keys no deben in­te­grar­se en el código de forma cla­ra­me­n­te legible ni al­ma­ce­nar­se en la es­tru­c­tu­ra de fuentes.
  • Se debe su­pe­r­vi­sar el uso y la apli­ca­ción de las API keys, por ejemplo, si varios pro­gra­ma­do­res utilizan Rest APIs a través de Open API.

Claves API y pro­te­c­ción de datos

Otro aspecto im­po­r­ta­n­te de las API keys es la pro­te­c­ción de datos. Esto comienza cuando instalas una nueva apli­ca­ción en tu móvil que solicita permisos adi­cio­na­les. Puede suceder que no revises de­te­ni­da­me­n­te qué permisos solicita una apli­ca­ción. En algunos casos, es posible que permitas in­vo­lu­n­ta­ria­me­n­te el acceso a todos tus datos de Facebook, fotos o memoria del móvil. La co­n­se­cue­n­cia puede ser una re­co­pi­la­ción exhau­s­ti­va de datos o, en el peor de los casos, la toma del control del sistema. Por ello, asegúrate de permitir úni­ca­me­n­te el acceso de apli­ca­cio­nes de confianza a través de la API keys para evitar un uso indebido de los datos.

Ir al menú principal