Concetti e nozioni di base

Concetti di base

L’API C2C si basa su diverse tecnologie essenziali che devi comprendere prima di iniziare un progetto di integrazione. Controlla i titoli di questo articolo: se alcuni termini non ti sono familiari, questa guida ti aiuterà a comprenderli. Se hai difficoltà con concetti specifici, il nostro team è disponibile ad aiutarti e a fornirti altre risorse.

Cosa devi sapere

Per integrare correttamente l’API C2C, devi avere una conoscenza di base dei seguenti argomenti:

Rete

TLS/SSL, protocolli TCP/IP e nozioni di base sulla rete

HTTPS

Implementazione di richieste HTTPS sicure

Autenticazione

Metodologie di autenticazione e autorizzazione

Nozioni di base sulla rete e glossario

L’API Frame.io consente la comunicazione tra i server di Frame.io e il tuo dispositivo o la tua applicazione, richiedendo interazioni di rete per ogni operazione.

Una comunicazione chiara è essenziale in qualsiasi rapporto, incluso quello tra server e client. Proprio come si verificano errori di comunicazione nelle conversazioni quotidiane, esistono problemi simili quando i computer si scambiano informazioni.

Oltre ad affrontare i problemi di comunicazione standard, dobbiamo garantire la trasmissione sicura di dati sensibili. Frame.io richiede la crittografia per tutte le comunicazioni server, aggiungendo i livelli di sicurezza necessari al processo.

Durante l’implementazione dell’API C2C, probabilmente utilizzerai librerie di terze parti per gestire i dettagli di rete. Tuttavia, poiché i componenti di rete spesso generano errori reali, è utile comprendere i processi sottostanti durante l’interazione con i server di Frame.io. Ecco un glossario conciso della terminologia essenziale:

TCP/IP

Transmission Control Protocol/Internet Protocol: componenti e livelli standardizzati che consentono il trasferimento globale dei dati. Per ulteriori informazioni, consigliamo di consultare questa risorsa generica.

TLS/SSL

Transport Layer Security/Secure Socket Layer: benché tecnicamente diversi, oggi sono comunemente usati in modo intercambiabile. TLS rappresenta l’evoluzione di SSL, anche se l’acronimo originale rimane ancora ampiamente utilizzato. Per ulteriori informazioni su TLS, consulta questa panoramica.

Chiavi pubbliche e private

Una chiave pubblica funziona come una serratura, mentre una chiave privata è la chiave corrispondente.

Immagina questo scenario: vuoi inviare a un collega un messaggio riservato che deve rimanere privato fino alla consegna.

Per prima cosa, chiedi al collega di inviarti una serratura di cui solo lui ha la chiave.

Dopo aver ricevuto questa serratura, la usi per mettere il messaggio riservato in un contenitore. Sebbene chiunque maneggi il contenitore possa vedere la serratura, solo il tuo collega ha la chiave per accedere al contenuto. La serratura non ha alcun valore per le persone non autorizzate che cercano di visualizzare il messaggio. Nemmeno tu puoi aprirla senza la chiave.

Quando il collega riceve il contenitore protetto, usa semplicemente la sua chiave per accedere al contenuto.

Le chiavi pubbliche e private funzionano allo stesso modo. Puoi condividere una chiave pubblica in modo molto ampio. I destinatari crittografano i messaggi con questa chiave, ma solo il proprietario della chiave privata può decrittografare queste comunicazioni. Finché la chiave privata rimane riservata, la chiave pubblica non può essere utilizzata per decodificare i messaggi crittografati che crea.

Questo meccanismo di chiave pubblica e privata è alla base della funzionalità TLS, consentendo alle parti di comunicare apertamente stabilendo al contempo canali sicuri e privati.

Certificati

I Certificati contengono chiavi pubbliche e private, autenticate da autorità di certificazione affidabili.

Quando un’autorità di certificazione convalida una chiave, essenzialmente ne garantisce l’autenticità. I destinatari di una chiave pubblica (ad esempio una di Google) possono verificare questa garanzia da parte di autorità di certificazione riconosciute. Le chiavi non garantite sono considerate potenzialmente fraudolente e attivano avvisi di sicurezza.

I certificati di Frame.io sono convalidati dall’autorità di certificazione Amazon Root CA 1. Questi certificati sono disponibili tramite varie risorse, tra cui la libreria Certifi (utilizzata da Mozilla e dalla libreria Python Requests).

Per l’implementazione, consigliamo il repository GitHub di Certifi e il bundle PEM di certificati per convalidare le richieste HTTPS ad api.frame.io.

Server

Un computer che fornisce o archivia informazioni per altri computer. Quando accedi a Frame.io tramite un browser web, questo richiede i contenuti dal server di Frame.io, che a sua volta risponde di conseguenza. Ogni azione all’interno di Frame.io attiva una comunicazione tra il browser e il nostro server, che elabora la richiesta e restituisce i risultati appropriati. Quando carichi media su Frame.io, li invii ai nostri server.

Client

Un’applicazione client richiede informazioni a un server o gli invia dei dati. Quando implementi l’API C2C, stai sviluppando un client C2C.

HTTP/S

Hypertext Transfer Protocol/Secure: funziona all’interno del livello applicazione del modello TCP/IP. La differenza tra HTTP e HTTPS è la sicurezza: .HTTPS incorpora la verifica TLS/SSL nelle comunicazioni di rete. HTTP si è evoluto attraverso varie versioni, stabilendo nuovi standard nel tempo. La versione 1.1 rimane lo standard globale e deve essere utilizzata per le comunicazioni dell’API Frame.io.

API RESTful

REST (Representational State Transfer) è una metodologia di progettazione per lo sviluppo di API basate sui pattern di richiesta-risposta HTTP. REST serve spesso come abbreviazione per l’approccio generale di utilizzo di HTTP per l’interazione tra programmi, che è diversa dalla comunicazione tra browser e pagina web, anche quando l’API non aderisce strettamente ai principi REST.

JSON

JavaScript Object Notation: un formato standardizzato per lo scambio di dati. Sebbene inizialmente sviluppato per gli oggetti JavaScript, è diventato uno standard universale per le comunicazioni di rete. L’API C2C fornisce le risposte sotto forma di dati JSON.

AWS S3

Simple Storage Service di Amazon fornisce soluzioni di archiviazione dati basate su cloud. S3 archivia i file video e audio di Frame.io e funge da destinazione per i caricamenti delle integrazioni.

Richieste HTTP/S

HTTP è onnipresente nella navigazione web: appare all’inizio di quasi tutti gli indirizzi dei siti web. HTTP (Hypertext Transfer Protocol) stabilisce protocolli di comunicazione standardizzati tra computer.

HTTP è una sorta di sistema di moduli standardizzato per le interazioni client-server, un po’ come accade con i moduli governativi necessari per richiedere informazioni o candidarsi a un determinato programma . Se i moduli non sono compilati correttamente, gli enti governativi non possono elaborare o rispondere alle richieste.

Le richieste HTTP facilitano tutte le interazioni dell’applicazione Frame.io. All’interno dell’infrastruttura API C2C, i tipi di richieste HTTP rappresentano le funzionalità disponibili.

Per una panoramica completa di HTTP, consulta questo articolo informativo. È essenziale comprendere questi principi fondamentali prima di continuare. Se non hai familiarità con le richieste HTTP, rivedi i materiali introduttivi. Per una preparazione ottimale, impara bene questi concetti HTTP:

Componenti URL
  • Protocollo

  • Host

  • Porta

  • Risorsa

Elementi HTTP
  • Intestazioni

  • Content-Type/Mimetype

  • Payload di richiesta e risposta

  • Applicazioni dei verbi HTTP: GET, POST, PUT, DELETE ecc.

  • Dati del modulo

Sebbene le librerie di rete gestiscano solitamente la costruzione delle richieste, HTTP/1.1 RFC fornisce una risorsa di riferimento, se necessaria.

Autenticazione e autorizzazione

Esploreremo questi concetti più approfonditamente in seguito, ma è importante comprendere questi principi di base:

Autenticazione

L’autenticazione verifica che le richieste provengano da fonti dichiarate. Quando accedi ai siti web con le credenziali (nome utente/password), ti stai autenticando perché dimostri di conoscere la password. L’autenticazione a più fattori, ad esempio mediante la ricezione di codici di verifica tramite SMS, rappresenta un meccanismo di autenticazione aggiuntivo.

Autorizzazione

L’autorizzazione conferma il permesso per eseguire azioni specifiche. Quando aggiungi dei collaboratori ai progetti Frame.io o ai documenti Google, stai autorizzandoli ad accedere. Frame.io o Google hanno autenticato in precedenza le identità di questi utenti, in modo che tu possa autorizzare con fiducia la loro partecipazione.

OAuth

OAuth (Open Authorization) fornisce un’infrastruttura standardizzata per la gestione delle autorizzazioni mediante integrazione con servizi di autenticazione di terze parti.

Ambiti

Gli ambiti definiscono le azioni autorizzate che gli utenti possono svolgere. Quando colleghi dei dispositivi a Frame.io, richiederai e riceverai ambiti specifici che autorizzano operazioni specifiche. Ad esempio, l’ambito asset_create consente la creazione e il caricamento di risorse. Concettualmente, gli ambiti funzionano come set di autorizzazioni.

Passaggi successivi

Ti incoraggiamo a contattare il nostro team per qualsiasi domanda, poi vai alla sezione successiva della guida. Saremo lieti di aiutarti nelle attività di integrazione.

Per una panoramica tecnica, consulta la guida sull’architettura di integrazione. Se non l’hai già fatto, consulta la guida Implementazione C2C: configurazione prima di procedere. Avrai bisogno dell’access_token ottenuto durante il processo di autenticazione e autorizzazione.