vai al contenuto principale

Profili e utenti

Profili ed utenti delle Cloudlet Livebase.

Un profilo è un’identità definita nel modello di una Cloudlet, a cui è associato un Profile Schema che ne elenca i permessi sulle risorse, quali le applicazioni e gli oggetti. Per “utente” intendiamo un qualunque utente che sia registrato presso la Cloudlet stessa.

Ad ogni utente può essere assegnato un solo profilo, che gli conferisce tutti i permessi che sono definiti nel relativo Profile Schema.

Utenti regolari e default member #

In Livebase, gli utenti di una Cloudlet sono istanze della classe di piattaforma __User e vivono all’interno del database della Cloudlet. Nel momento in cui questo è generato per la prima volta, viene creato un default member con lo stesso nome utente e password dell’account Livebase attualmente in uso, e a esso viene assegnato il profilo Member, che garantisce pieno accesso a tutte le classi del modello, eccetto la classe __User. Se il database è svuotato o eliminato, è possibile creare nuovamente il default member facendo clic prima sull’icona e poi sul pulsante Create Member.

Members of the cloudlet

Create member

Abilitare nuovi utenti #

Per poter abilitare altri utenti all’accesso della Cloudlet, è necessario svolgere queste operazioni:

  • rendere visibile la classe __User nel modello: questo richiede di includerla nel Database Schema e di abilitarla in almeno una vista applicativa;
  • concedere i privilegi di creazione degli utenti ad almeno uno dei profili definiti.

I primi due passaggi sono dettagliati rispettivamente nel paragrafo Creare la classe __User della sezione Classe __User, e nel paragrafo Diritti della Classe __User della sezione Diritti (grant). La sezione seguente illustra la procedura di accesso e di creazione di nuovi utenti da GraphQL.

Creare utenti con GraphQL #

Accedi alla Dashboard e avvia una Cloudlet con le GraphQL abilitate (vedi il paragrafo Abilitare la generazione delle API GraphQL).

Sottometti la seguente mutation di tipo create fornendo il token di autenticazione di un utente con i permessi di creazione sulla classe __User, quindi :

mutation {
  _User___create(data : {
    username : <newUserName>,
    profile : <newUserProfile>,
    email : <newUserEmail>
  }) {
    _id
  }
}

I campi username, profile e email devono essere rispettivamente compilati con il nome utente, il profilo da assegnare, e l’email di riferimento del nuovo utente. È necessario anche specificare un elenco di selection fields, ovvero i campi del nuovo oggetto creato che si vuole vengano mostrati nella risposta. Nell’esempio è stato richiesto il solo campo _id.

Se l’operazione va a buon fine, si ottiene una risposta come quella mostrata in figura, e il link per impostare la password viene inviato all’indirizzo email specificato.

{
  "data": {
    "_User___create": {
      "_id": <newUserId>
    }
  }
}