Sicurezza e privacy per l’integrazione applicativa e dei sensori

Identificazione

L’identificazione univoca dei sensori deve essere fatta utilizzando uno Universally Unique Identifier (UUID). Si tratta di un numero su 128bit che attraverso specifici algoritmi di generazione viene garantito univoco nello spazio e nel tempo ([UUID]). In particolare questo numero su 128 bit deve essere rappresentato nella sua forma canonica attraverso 32 caratteri esadecimali e minuscoli (8-4-4-4-12) come nel seguente esempio:

550e8400-e29b-41d4-a716-446655440000

Autenticazione

Tutte le comunicazioni che vanno verso la piattaforma devono contenere le informazioni che consentano alla piattaforma di autenticare la sorgente. Tale paradigma si applica quindi ai messaggi provenienti dai sensori o feed, e alle richieste effettuate tramite REST API o Streaming API. Yucca mette a disposizione l’autenticazione basic (ovvero quella basata sull’invio di username e password) per quanto riguarda l’invio di dati.

Per la fruizione di dati, sia essa in realtime o online, Yucca mette a disposizione il protocollo OAuth 2.0 ([OAUTH]). I paragrafi successivi descrivono come devono essere passate le credenziali necessarie all’autenticazione sulla base del trasporto utilizzato (MQTT e HTTP).

Autenticazione su MQTT per l’invio

L’autenticazione su MQTT avviene inserendo username e password negli appositi campi previsti dal protocollo nella fase di connessione.

Autenticazione su MQTT e Websocket per la fruizione

Nel caso di fruizione via MQTT o Wdeve inviare unicamente il valore del token di accesso preceduto da “Bearer” all’interno del campo destinato allo username, mentre nel campo password non è necessario inserire alcun valore come indicato nell’esempio di Tabella 9.

Tabella 9 - Bearer token OAuth 2.0 su MQTT e websocket

Campo Valore
Username Bearer XXXXXXXXXXXXXX
Password  

Autenticazione su http per l’invio

Su HTTP occorre utilizzare la Basic Authentication come specificato in [HTTPA].

Autenticazione su http per la fruizione

Nella variante OAuth 2.0, il token deve essere inviato utilizzando l’header Authorization ([BEARER]) come nel seguente esempio.

GET /path/to/endpoint HTTP/1.1 Authorization: Bearer mF_9.B5f-4.1JqM

Ulteriori aspetti di sicurezza

Sia il protocollo HTTP che MQTT possono essere veicolati su SSL/TLS ([TLS]). Yucca può offrire questo protocollo nella configurazione che prevede l’autenticazione del server e la sicurezza del canale attraverso cifratura.

Aspetti di privacy

Tutti i dati che vanno verso la piattaforma e che identificano o possono identificare anche indirettamente, mediante riferimento a qualsiasi altra informazione, una “persona fisica”, sono, a tutti gli effetti di legge, dei “dati personali” ai sensi del D.Lgs. 196/2003, Codice in materia di protezione dei dati personali.

In tal caso, si ricorda che al Fornitore spettano, in qualità di Titolare autonomo del trattamento dei dati forniti, tutti gli adempimenti finalizzati ad ottemperare alla normativa in materia di privacy (informative, acquisizione di consensi da parte degli interessati, eventuali nomine, notificazioni, verifiche preliminari, adozione di idonee misure di sicurezza ecc.).

Non sono soggetti agli adempimenti previsti dal Codice in materia di protezione dei dati personali solo i trattamenti di dati personali “anonimi», dati che in origine, o a seguito di tecniche di anonimizzazione, non possono essere associati in modo univoco ad una persona fisica identificata o identificabile.