Controllare gli accessi ai record
Obiettivi di apprendimento
- Elencare i quattro modi per controllare l'accesso ai record.
- Descrivere le situazioni in cui utilizzare ciascuno dei quattro tipi di sicurezza a livello di record.
- Spiegare in che modo i diversi controlli dei record interagiscono tra loro.
- Definire impostazioni predefinite di condivisione a livello di organizzazione per controllare l'accesso ai record.
Sicurezza a livello di record
- Gli utenti devono poter accedere liberamente a tutti i record o solo a un sottoinsieme?
- Se si tratta di un sottoinsieme, quali sono le regole che stabiliscono se l'utente può accedervi?
Per la nostra app Recruiting, supponiamo di creare un nuovo profilo chiamato Recruiter per dare ai recruiter le autorizzazioni a livello di oggetto di cui hanno bisogno. Limitiamo la facoltà di eliminare gli oggetti collegati al reclutamento, impedendo totalmente ai recruiter di eliminare quegli oggetti. Tuttavia, concedere ai recruiter l'autorizzazione a creare, leggere o modificare gli oggetti di reclutamento non significa necessariamente che i recruiter possano leggere o modificare ogni record dell'oggetto di reclutamento. Questo è il risultato di due importanti concetti:
- Le autorizzazioni di un record sono sempre valutate in base a una combinazione di autorizzazioni a livello di oggetto, a livello di campo e a livello di record.
- Qualora le autorizzazioni a livello di oggetto e quelle a livello di record siano in contrasto, prevalgono le impostazioni più restrittive.
- Le impostazioni predefinite a livello di organizzazione specificano il livello di accesso reciproco predefinito degli utenti ai record degli altri utenti.
- Le gerarchie dei ruoli garantiscono ai responsabili l'accesso agli stessi record dei loro subordinati. Ciascun ruolo della gerarchia rappresenta un livello di accesso ai dati di cui un utente o un gruppo di utenti ha bisogno.
- Le regole di condivisione sono eccezioni automatiche alle impostazioni predefinite a livello di organizzazione per particolari gruppi di utenti e consentono a questi ultimi di accedere a record che non possiedono o che normalmente non possono vedere.
- La condivisione manuale consente ai titolari dei record di concedere autorizzazioni di lettura e modifica a utenti che diversamente non disporrebbero dell'accesso al record.
- Le autorizzazioni di base di un utente per qualsiasi oggetto sono determinate dal suo profilo.
- Se all'utente sono stati assegnati degli insiemi di autorizzazioni, questi impostano anche le autorizzazioni di base unitamente al profilo.
- L'accesso ai record di cui un utente non è titolare viene definito innanzitutto dalle impostazioni predefinite a livello di organizzazione.
- Se le impostazioni predefinite a livello di organizzazione sono inferiori a Public Read/Write (Lettura/Scrittura pubblica), è possibile riaprire l'accesso per determinati ruoli utilizzando la gerarchia dei ruoli.
- Puoi utilizzare le regole di condivisione per estendere l'accesso ad altri gruppi di utenti.
- Il titolare del record può condividere manualmente i singoli record con altri utenti utilizzando il pulsante Share (Condividi) disponibile nel record.
Hai già visto come configurare l'accesso a livello di oggetto e di campo utilizzando i profili e gli insiemi di autorizzazioni. Ora esamineremo in dettaglio i diversi controlli di sicurezza a livello di record.
Condivisione a livello di organizzazione
- Chi è l'utente di questo oggetto soggetto a maggiori restrizioni?
- Ci sarà mai un'istanza di questo oggetto che questo utente non dovrebbe essere autorizzato a vedere?
- Ci sarà mai un'istanza di questo oggetto che questo utente non dovrebbe essere autorizzato a modificare?
In base alle risposte, puoi configurare il modello di condivisione per quell'oggetto applicando una delle seguenti impostazioni.
Private (Privato)Solo il titolare del record e gli utenti con un ruolo superiore nella gerarchia possono visualizzare, modificare e creare rapporti per questi record.
Public Read Only (Sola lettura pubblica)
Tutti gli utenti possono visualizzare i record e generare rapporti al riguardo, ma solo il titolare e gli utenti che ricoprono un ruolo superiore nella gerarchia possono modificarli.
Public Read/Write (Lettura/Scrittura pubblica)
Tutti gli utenti possono visualizzare, modificare e creare rapporti su tutti i record.
Controlled by Parent (Controllato da società controllante)
Un utente può visualizzare, modificare o eliminare un record se può eseguire quella stessa azione sull'oggetto a cui quel record appartiene.
Quando le impostazioni di condivisione a livello di organizzazione di un oggetto sono Private (Privato) o Public Read Only (Sola lettura pubblica), un amministratore può concedere agli utenti un accesso aggiuntivo ai record stabilendo una gerarchia dei ruoli o definendo delle regole di condivisione. Le regole di condivisione possono essere utilizzate solo per concedere un accesso aggiuntivo. Non è possibile usarle per limitare l'accesso ai record in misura superiore a quella specificata originariamente con le impostazioni predefinite per la condivisione a livello di organizzazione.
A titolo di esempio, proviamo a rispondere all'elenco di domande riportate qui sopra per l'oggetto Position (Posizione) nell'app Recruiting.
Chi è l'utente di questo oggetto soggetto a maggiori restrizioni?Un membro del profilo Standard Employee (Dipendente standard). L'unica cosa che può fare è visualizzare una posizione.
Ci sarà mai un'istanza di questo oggetto che questo utente non dovrebbe essere autorizzato a vedere?
No. Per quanto i valori per i campi della retribuzione minima e massima siano nascosti ai dipendenti standard, questi ultimi possono comunque visualizzare tutti i record delle posizioni.
Ci sarà mai un'istanza di questo oggetto che questo utente non dovrebbe essere autorizzato a modificare?
Sì. I dipendenti standard non possono modificare alcun record inerente alle posizioni.
Poiché abbiamo risposto "Sì" alla terza domanda, ciò significa che il modello di condivisione per l'oggetto Position (Posizione) deve essere impostato su Public Read Only (Sola lettura pubblica). Ripetendo la stessa procedura con gli altri oggetti inerenti al reclutamento, potrai facilmente individuare le impostazioni predefinite più adatte a livello organizzazione. Il profilo Standard Employee (Dipendente standard) è quello soggetto alle maggiori restrizioni per ciascun oggetto e ci saranno record di candidati, candidature e valutazioni che determinati dipendenti non saranno in grado di visualizzare. Di conseguenza, è necessario impostare il modello di condivisione per tutti gli oggetti Candidate (Candidato), Job Application (Candidatura) e Review (Valutazione) su Private (Privato).
Definire le impostazioni predefinite per la condivisione a livello di organizzazione
- In Setup (Imposta), nella casella Quick Find (Ricerca veloce), inserisci Sharing Settings (Impostazioni di condivisione) e fai clic su Sharing Settings (Impostazioni di condivisione).
- Fai clic su Edit (Modifica) nell'area Organization-Wide Defaults (Impostazioni predefinite organizzazione). Nota che alcuni oggetti standard utilizzano opzioni predefinite diverse a livello di organizzazione. Le opzioni predefinite dell'oggetto personalizzato a livello di organizzazione sono Private (Privato), Public Read Only (Sola lettura pubblica) o Public Read/Write (Lettura/Scrittura pubblica).
- Per ciascun oggetto, seleziona l'accesso interno predefinito e l'accesso esterno predefinito.
- Per disabilitare l'accesso automatico utilizzando le gerarchie, deseleziona Grant Access Using Hierarchies (Concedi accesso tramite le gerarchie) per qualsiasi oggetto personalizzato privo dell'accesso predefinito di Controlled by Parent (Controllato da società controllante).
Anche se l'opzione Grant Access Using Hierarchies (Concedi accesso tramite le gerarchie) è deselezionata, alcuni utenti, ad esempio quelli con autorizzazioni per oggetti "View All" ("Visualizza tutto") e "Modify All" ("Modifica tutto") e autorizzazioni di sistema "View All Data" ("Visualizza tutti i dati") e "Modify All Data" ("Modifica tutti i dati"), possono comunque accedere ai record di cui non sono titolari.
Ulteriori informazioni...
La condivisione gestita Apex consente agli sviluppatori di condividere in modo programmatico i record associati agli oggetti personalizzati. Quando si utilizza la condivisione gestita Apex per un oggetto personalizzato, solo gli utenti con l'autorizzazione "Modify All Data" ("Modifica tutti i dati") possono aggiungere o modificare la condivisione per i record di quell'oggetto personalizzato e l'accesso alla condivisione rimane invariato anche se il titolare del record cambia. Per ulteriori informazioni, vedere Condivisione Apex.