Protezione
ThingWorx fornisce un modello di protezione molto granulare. Esistono due insiemi di permessi, uno per la fase di progettazione e uno per la fase di esecuzione. I permessi per la fase di progettazione sono destinati alla gestione degli utenti autorizzati a modificare il modello (creazione, lettura, aggiornamento ed eliminazione delle entità), mentre i permessi per la fase di esecuzione determinano chi può accedere ai dati, eseguire i servizi ed attivare eventi su un oggetto (che include tabelle di dati, stream e utenti). I controlli per la protezione e i permessi si trovano nella sezione Protezione e nei menu in Composer.
Per ciascun permesso, è possibile consentire esplicitamente a un utente o a un gruppo di eseguire determinate operazioni, come la modifica di un oggetto, oppure negare esplicitamente a un gruppo la possibilità di eseguire determinate operazioni (non consentendo ad esempio al gruppo di utenti di modificare un oggetto). È possibile applicare i permessi a livello di gruppo e a livello di utente. Una negazione esplicita di un privilegio sostituisce sempre la concessione di un privilegio. Si noti che i controlli di sicurezza di default non consentono un'operazione. Se un utente non dispone di alcuna concessione specifica, tale operazione viene negata.
I permessi per la fase di progettazione sono destinati a operazioni CRUD (creazione, lettura, aggiornamento, eliminazione) standard su qualsiasi entità. Controllano la definizione del modello e chi può apportarvi modifiche. Questi permessi possono essere applicati alle singole entità (lettura, aggiornamento o eliminazione di un oggetto specifico, una thing shape, una data shape e così via) o possono essere ampiamente applicati a un'intera raccolta di entità (creazione, lettura, aggiornamento o eliminazione di oggetti, thing shape, data shape e così via). Se si applicano i permessi alla raccolta, è possibile sostituire, aggiungere o ridurre tali permessi a livello di singola entità.
I permessi per la fase di esecuzione si applicano a tutti gli aspetti di entità come lettura proprietà, scrittura proprietà, esecuzione evento ed esecuzione servizio. Le sostituzioni dei permessi per la fase di esecuzione consentono la riduzione dei permessi per aspetti specifici, come proprietà, servizi o eventi.
È possibile impostare i permessi per la fase di esecuzione a livello di oggetto, modello di oggetto o raccolta. Una raccolta è un gruppo di oggetti o modelli di oggetto i cui permessi vengono ereditati da tutti i relativi elementi. È inoltre possibile impostare i permessi per la fase di progettazione e la fase di esecuzione a livello di singolo modello di oggetto affinché tutti gli oggetti derivati da tale modello di oggetto ereditino le impostazioni specificate. Tutti i permessi ereditati possono essere sostituiti a livello di singolo oggetto.
Le entità astratte nel modello non dispongono di permessi per la fase di esecuzione. Queste entità includono thing shape, data shape e gruppi.
* 
Se gli utenti o i gruppi corrispondenti non esistono prima dell'importazione da ThingworxStorage nel server di destinazione, le raccolte non vengono scritte come previsto. Per garantire che i permessi vengano importati correttamente, è necessario creare utenti e gruppi in ThingWorx. Pertanto, è necessario creare un'esportazione di utenti e gruppi, importarli, quindi importare il resto del modello.
* 
I permessi a livello di raccolta (oggetti, modelli di oggetto, log e così via) vengono esportati o importati solo in caso di esportazione in ThingworxStorage o di importazione da ThingworxStorage. Se si importa o si esporta da file, i permessi a livello di raccolta si applicano solo a livello di entità.
È stato utile?