Sviluppo informatico-application programming interface Giacomo Lanzi

Application programming interface: le nostre User API

Tempo di lettura: 5 min

Nel processo di sviluppo informatico, prima o poi ci si imbatte nei servizi API, acronimo di Application Programming Interface. Ad oggi e’ impossibile immaginare uno sviluppo informatico senza. Con le API e’ possibile collegare un servizio a un applicativo e integrarlo in modo efficiente. Prima di introdurre le API specifiche del servizio Cloud Server, e’ bene sapere a grandi linee cosa sia un’API e perche’ sono cosi’ tanto usate in informatica.

Cos’e’ un’API e come funziona?

Un application programming interface e’ come un linguaggio aperto, le cui regole sono condivise da un certo servizio. Insegnando le regole del linguaggio a un’applicazione, questa puo’ comunicare con il servizio e accedere a tutte le funzioni e i dati che sono a disposizione.

Parlando in modo un po’ piu’ formale: l’API e’ un’interfaccia che permette a un’app di interagire con un servizio esterno tramite un set di comandi. Non e’ necessario conoscere la logica interna del servizio, basta utilizzare un semplice comando e il servizio restituira’ i dati richiesti.

Voglio proporre una analogia che puo’ tornare utile per comprendere questo strumento. Quando entri in un ristorante e parli con un cameriere, puoi ordinare le pietanze, fare domande sul menu’, chiedere il conto e cosi’ via. Questa persona e’ come un filtro che ti separa da tutte le complicazioni che ci sono dietro le quinte. Non dovrai preoccuparti di stoviglie, forni, personale o riserve di cibo. Il cameriere diventa l’interfaccia che ti permette di usufruire di tutti i servizi, senza doverti preoccupare di come funzioni un ristorante. Ecco, il cameriere puo’ essere interpretato come l’API del ristorante.

Il comando specifico, il metodo di richiesta (o chiamata) e la sintassi da utilizzare, sono informazioni descritte nella documentazione del servizio che offre le application programming interface.

 

Utilizzi

Application programming interface e Sviluppo InformaticoQuesto potente strumento si trova ormai dappertutto, tanto che spesso non ci rendiamo nemmeno conto di quanti servizi utilizziamo tramite API. Principalmente le application programming interface sono un ottimo modo per eseguire uno dei seguenti compiti:

Scambio di dati
Nell’esempio del ristorante, fare una domanda al cameriere equivale a uno scambio di dati. Sarebbe come una risposta a una domanda che riguarda i dati messi a disposizione.
Nascondere parti complesse e compiere operazioni
Nell’esempio del ristorante, non e’ necessario che tu sappia come cucinare una perfetta lasagna, ti limiterai a ordinarla. La richiesta prevede che il servizio fornisca un prodotto, non semplicemente dati grezzi.
Estendere funzionalita’
Per esempio, nei sistemi operativi dei dispositivi mobili, i widget, che mostrano informazioni utili a schermo come parte dello sfondo, sono usati tramite API. Il SO richiede all’app che fornisce il widget, tutte le informazioni che servono per mostrare in modo corretto questa funzionalita’. Anche questo avviene tramite API.
Aumentare la sicurezza
Poiche’ e’ il SO a gestire le autorizzazioni d’uso dei vari componenti hardware, e’ incaricato di richiedere all’utente l’autorizzazione alla condivisione di un componente. E’ quindi il SO il responsabile per la sicurezza e gestione dei dati raccolti dai sensori del cellulare.

Per approfondire l’argomento API, vi condividiamo un video di spiegazione dal canale Simply Explained.

User API di Secure Online Desktop

Secure Online Desktop mette a disposizione le proprie User API per abilitare il controllo completo del proprio account e servizi dalle proprie app/sistemi. Tramite le HTTP REST API messe a disposizione e’ possibile anche rivendere i servizi con formula white label, quindi potendo brandizzare in piena liberta’ i servizi.

HTTP REST API

Questo tipo di API si caratterizza per una comunicazione tramite protocollo HTTP e il rispetto di principi architetturali definiti come REpresentational State Transfer. Se il protocollo HTTP e i suoi metodi di comunicazione sono abbastanza noti e largamente compresi, forse e’ bene accennare ai principi REST.

In un’analisi universitaria pubblicata come tesi da Roy Fielding, venivano analizzati i principi per un’architettura software che consentisse di vedere il Web come una piattaforma di elaborazione distribuita. Secondo questa analisi, che ipotizzava una generica architettura, il Web e’ risultato avere tutto quello serve per essere considerato una perfetta piattaforma per l’elaborazione distribuita.

Un set di API che rispetta la logica REST ipotizzata nel 2000 da Roy Fielding, e’ chiamata RESTful API. Anche se i termini creano confusione, in realta’ rispecchiano perfettamente il concetto che REST non e’ una tecnologia o un linguaggio, ma sono semplicemente delle linee guida che possono essere rispettate o meno. 

REST API spiegate

White Label

Le nostre API sono offerte appositamente per offrire la possibilita’ ai nostri clienti di proporre i nostri servizi in modalita’ white labelQuesto significa che i nostri servizi possono essere offerti ai clienti dei nostri clienti, senza che questi si accorgano di nulla.

La pratica del white label, infatti, consiste proprio nell’offerta di prodotti senza brand, con il preciso intento di invogliare al rebranding del servizio. Un altro interessante vantaggio derivato dall’uso delle API.

Conclusioni

Oltre che la possibilita’ di offrire in white label i nostri servizi ai vostri clienti, potrete anche utilizzare le API per implementare i servizi direttamente nelle vostre app, ampliando le possibilita’ di sviluppo disponibili.

Le API sono offerte con una documentazione completa di tutti i metodi di richiesta offerti. Sono consentite una moltitudine di diverse chiamate API che comprendono la gestione degli utenti, dei domini, dei DNS, delle macchine virtuali e molto altro.

Riassumendo, tramite le HTTP REST API di SOD e’ possibile:

1. implementare l’accesso alle macchine virtuali, hypervisor, rete, dischi, backup e molto altro nei loro applicativi
2. offrire i nostri servizi ribrandizzati ai vostri clienti

Richiedi ulteriori informazioni o una consulenza a riguardo.

 

Link utili:

Cloud Server Cloud API

Condividi


RSS

Piu’ articoli…

Categorie …

Tags

RSS CSIRT

RSS Dark Reading:

RSS Full Disclosure

  • Backdoor.Win32.Nbdd.bgz / Remote Stack Buffer Overflow Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/6fab73bf104c6a9211b94f9559faa134.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.Nbdd.bgz Vulnerability: Remote Stack Buffer Overflow Description: NetBot_Attacker VIP 5.9 on initial startup listens on port 8080 and on subsequent restarts port 80. Third-party attackers who can reach an infected system […]
  • Backdoor.Win32.Bifrose.acci / Local Stack Buffer Overflow Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/611dbff0d68df777c6d6881e00440143.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.Bifrose.acci Vulnerability: Local Stack Buffer Overflow Description: Bifrost doesn't properly validate the IP address when importing Bifrost settings (.set) files. The IP address offset is located after a NULL byte which […]
  • Backdoor.Win32.PsyRat.b / Remote Denial of Service Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/5817183894cb513239f6aef28895130c_B.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.PsyRat.b Vulnerability: Remote Denial of Service Description: The PsyRAT 1.02 malware listens by default on TCP port 9863. Third-party attackers who can reach infected systems can send a specially crafted command […]
  • Backdoor.Win32.PsyRat.b / Unauthenticated Remote Command Execution Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/5817183894cb513239f6aef28895130c.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.PsyRat.b Vulnerability: Unauthenticated Remote Command Execution Description: The PsyRAT 1.02 malware listens by default on TCP port 9863, but can be changed when building backdoor servers. Third-party attackers who can reach...
  • Backdoor.Win32.Agent.cu / Unauthenticated Remote Command Execution Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/ce1963d3fd6a8e1383aac40a1f1c4107_C.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.Agent.cu Vulnerability: Unauthenticated Remote Command Execution Description: The malware listens on TCP ports 10426, 56185. Third-party attackers who can reach infected systems can execute commands made available by the backdoor....
  • Backdoor.Win32.Agent.cu / Port Bounce Scan (MITM) Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/ce1963d3fd6a8e1383aac40a1f1c4107_B.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.Agent.cu Vulnerability: Port Bounce Scan (MITM) Description: The malware listens on TCP ports 10426, 56185, its FTP component accepts any username/password credentials. Third-party attackers who successfully logon can abuse the...
  • Backdoor.Win32.Agent.cu / Authentication Bypass RCE Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/ce1963d3fd6a8e1383aac40a1f1c4107.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.Agent.cu Vulnerability: Authentication Bypass RCE Description: The malware listens on TCP ports 10426, 56185. Third-party attackers who can reach infected systems can logon using any username/password combination. Intruders may then...
  • Backdoor.Win32.Mazben.me / Unauthenticated Open Proxy Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/6681d5e4b68abd21a14c704edf9e2ff5.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.Mazben.me Vulnerability: Unauthenticated Open Proxy Description: The malware listens on random TCP ports like 3515, 7936, 3972. Third-party attackers who can connect to the infected system can relay requests from the […]
  • Backdoor.Win32.Hupigon.aaur / Unauthenticated Open Proxy Luglio 27, 2021
    Posted by malvuln on Jul 26Discovery / credits: Malvuln - malvuln.com (c) 2021 Original source: https://malvuln.com/advisory/16d598c01f7b391986c8c19eded005b1.txt Contact: malvuln13 () gmail com Media: twitter.com/malvuln Threat: Backdoor.Win32.Hupigon.aaur Vulnerability: Unauthenticated Open Proxy Description: The malware listens on TCP port 8080. Third-party attackers who can connect to the infected system can relay requests from the original connection to the...
  • ATLASSIAN - CVE-2020-36239 - Jira Data Center and Jira Service Management Data Center Luglio 27, 2021
    Posted by Atlassian on Jul 26This email refers to the advisory found at https://confluence.atlassian.com/adminjiraserver/jira-data-center-and-jira-service-management-data-center-security-advisory-2021-07-21-1063571388.html CVE ID: * CVE-2020-36239 Products: Jira Data Center, Jira Core Data Center, Jira Software Data Center, and Jira Service Management Data Center. Affected Versions - Jira Data Center, Jira Core Data Center, and Jira Software Data Center: 6.3.0

Customers

Newsletter