Permessi¶
QFieldCloud fornisce un controllo di accesso a grana fine sui progetti con i concetti di collaboratori di progetto, membri dell'organizzazione e team dell'organizzazione.
Attori¶
- Utente non registrato.
- Semplice utente registrato, né collaboratore del progetto in questione, né membro dell'organizzazione interessata, né utente interessato.
- Proprietario del progetto in questione, l'utente interessato, ma non collaboratore o membro dell'organizzazione.
- Collaboratore con ruolo admin del progetto in questione.
- Collaboratore con ruolo manager del progetto in questione.
- Collaboratore con ruolo editor del progetto in questione.
- Collaboratore con ruolo reporter del progetto in questione.
- Collaboratore con ruolo reader del progetto in questione.
- Proprietario dell'organizzazione interessata o dell'organizzazione che possiede il progetto in questione o a cui appartiene l'utente.
- Membro dell'organizzazione con ruolo admin dell'organizzazione interessata o dell'organizzazione che possiede il progetto in questione o a cui appartiene l'utente.
- Membro dell'organizzazione con ruolo member dell'organizzazione interessata o dell'organizzazione che possiede il progetto in questione o a cui appartiene l'utente.
Azioni¶
- ❌ Non consentito
- ✅ Permesso
- ‒ Irrelevante
| Action | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| List/query project's collaborator roles | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | |
| Create project's collaborator (i.e. define new collaborator) | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | |
| Update project's collaborator's info (i.e. role) | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | |
| Delete project's collaborator (i.e. remove user as collaborator) | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | |
| List organization's members | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ✅ | ✅ | ✅ | |
| Create organization's member (i.e. define a new member) | ❌ | ❌ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ✅ | ✅ | ❌ | |
| Get organization's member info (i.e. role) | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ✅ | ✅ | ✅ | |
| Update organization's member info (i.e. role) | ❌ | ❌ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ✅ | ✅ | ❌ | |
| Delete organization's member info (i.e. remove user as organization's member) | ❌ | ❌ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ✅ | ✅ | ❌ | |
| List/query public projects | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | |
| List/query private projects | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | |
| Update project's info | ❌ | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | |
| Create a project | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ✅ | ✅ | ❌ | |
| Delete project | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ❌ | |
| Add deltafile | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | |
| List project's deltafiles | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | |
| Get deltafile's status | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | |
| List project's files (qfieldsync) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | |
| Download project's files (qfieldsync) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | |
| Upload project's files (qfieldsync) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | |
| Delete project's files (qfieldsync) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | |
| List project's files (qfield) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | |
| Download project's files (qfield) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | |
| List users and organizations | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | |
| Get user's public information | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | |
| Get user's detailed information | ❌ | ❌ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ✅ | ✅ | ❌ | |
| Update user's information | ❌ | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ❌ | ❌ | ❌ | |
| Delete user | ❌ | ❌ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ❌ | ❌ | ❌ | |
| Get API status | ✅ | ✅ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | ‒ | |
| Add and remove secrets | ‒ | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | ‒ | ‒ | ‒ |
Ruoli¶
ProjectCollaborator¶
Un collaboratore di un progetto utente normale può essere solo un reporter o lettore. Editor o manager possono essere impostati solo per il progetto di un'organizzazione.
Ruoli¶
Un ruolo superiore include sempre anche quelli inferiori
| Nome | Descrizione |
|---|---|
| amminnsta | Rinominare o eliminare il progetto. Gli stessi diritti del proprietario del progetto, tranne il trasferimento della proprietà. |
| manager | Può aggiungere o rimuovere collaboratori. |
| editor | Può modificare i dati |
| reporter | Può solo inserire dati (non può aggiornare o cancellare). |
| reader | Può leggere i dati. |
OrganizationMember¶
Ruoli¶
Un ruolo superiore include sempre anche quelli inferiori
| Nome | Descrizione |
|---|---|
| amminnsta | Può aggiungere e rimuovere membri e creare progetti |
| membro | (la differenza rispetto ad un altro utente è solo per motivi di fatturazione) |