Panoramica

La piattaforma per veicoli definiti dal software (SDV) fornisce un framework di autorizzazione per consentire il controllo dell'accesso OEM ad alcune risorse.

Android ha un modello di autorizzazioni in cui ogni app dichiara le proprie autorizzazioni nel file manifest per descrivere le sue funzionalità. Il modello di autorizzazione SDV è simile. I bundle di servizi SDV definiscono le autorizzazioni per dichiarare le azioni che possono eseguire, come pubblicare, sottoscrivere, pubblicare e chiamare.

Tipi di autorizzazioni

Sono supportati i seguenti tipi di autorizzazioni:

Cliente
Autorizzato a chiamare i metodi su un'interfaccia RPC, identificata dal tipo di servizio e dal canale.
Server
Autorizzato a implementare e pubblicare un'interfaccia RPC, identificata dal tipo di servizio e dal canale.
Publisher
Autorizzato a pubblicare messaggi in un argomento di dati, identificato dal tipo di messaggio e dall'argomento.
Sottoscrittore
Autorizzato a ricevere messaggi da un argomento di dati, identificato dal tipo di messaggio e dall'argomento.

File delle policy di autorizzazione

Il file delle policy di autorizzazione è un'unica fonte di riferimento per la configurazione dell'autorizzazione dello stack di comunicazione SDV per un bundle di servizi SDV.

Esempio

# Allows this SB to register publication of TireStatus type with "left-tire" topic only.
publisher {
  message: "com.sdv.TireStatus"
  topic: "left-tire"
}

# Allows this SB to subscribe to publication of TireStatus type with "left-tire" topic only.
subscriber {
  message: "com.sdv.TireStatus"
  topic: "left-tire"
}

# Allows this SB to implement and serve UserPreferencesManager service.
server {
  service: "com.sdv.UserPreferencesManager"
  channel: "default"
}

# Allows this SB to discover and call UserPreferencesManager service.
client {
  service: "com.sdv.UserPreferencesManager"
  channel: "default"
}

Consulta Deployment per determinare a quale servizio appartiene un file di policy di autorizzazione specifico. Per ulteriori informazioni sullo schema proto, consulta Policy di autorizzazione.

Autorizzazioni a livello di VM

Le autorizzazioni a livello di VM definiscono le policy di autorizzazione per la comunicazione tra diverse VM nella rete mesh. In questo modo, viene fornita una sicurezza di difesa in profondità in caso di compromissione di una VM. Per ulteriori informazioni, consulta Autorizzazioni a livello di VM.

Rete mesh

L'architettura di Service Discovery è configurata in modo che tutte le policy di autorizzazione siano condivise tra le VM nella rete mesh. Non è richiesto alcun intervento dell'utente.

Service Discovery esegue una ricerca nella cache locale per scoprire le unità di servizio su una VM remota. Tutte le policy di autorizzazione vengono condivise tra le VM per verificare se il chiamante di Service Discovery è autorizzato per le unità di servizio rilevate.

Ogni nodo all'interno della rete mesh memorizza nella cache le policy di autorizzazione di tutti gli altri nodi. Quando viene introdotto un nuovo nodo, le relative policy di autorizzazione vengono replicate in tutti gli altri nodi. Se si perde una connessione al nodo, ad esempio durante un riavvio o un arresto anomalo, tutte le policy di autorizzazione memorizzate nella cache del nodo vengono eliminate.