Controllare gli accessi ai record
Obiettivi di apprendimento
Al completamento di questa unità, sarai in grado di:
- 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
Per controllare con precisione l'accesso ai dati, è possibile consentire a determinati utenti la visualizzazione di campi specifici in un oggetto specifico, ma poi limitare i singoli record che quegli utenti sono autorizzati a vedere.
L'accesso ai record determina quali record individuali gli utenti possono visualizzare e modificare in ogni oggetto a loro accessibile nel loro profilo. Per prima cosa chiediti:
- 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.
Ciò significa che, anche se si concedono a un profilo le autorizzazioni per creare, leggere e modificare gli oggetti collegati al reclutamento, se le autorizzazioni a livello di record per un singolo record di reclutamento risultano più restrittive saranno queste ultime a stabilire ciò a cui un recruiter può accedere. Tuttavia, come vedrai, le autorizzazioni a livello di record offrono livelli di accesso crescenti. Quindi è importante sapere quali autorizzazioni a livello di record vengono osservate per capire il livello di accesso di un utente.
È possibile controllare l'accesso a livello di record in quattro modi. Sono elencati in ordine di capacità di accesso crescente. Puoi usare le Impostazioni predefinite a livello di organizzazione per bloccare i dati al livello più restrittivo e servirti degli altri strumenti di sicurezza a livello di record per consentire l'accesso a utenti selezionati, se necessario.
- 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.
La visibilità e l'accesso a qualsiasi tipo di dati sono determinati dall'interazione dei controlli di sicurezza di cui sopra, basati su questi principi chiave.
- 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
Le impostazioni predefinite a livello di organizzazione specificano il livello di accesso base che l'utente soggetto a maggiori restrizioni dovrebbe avere. Usa le impostazioni predefinite a livello di organizzazione per bloccare i dati, quindi utilizza altri strumenti di protezione e condivisione a livello di record (gerarchie dei ruoli, regole di condivisione e condivisione manuale) per rendere i dati disponibili ad altri utenti che hanno bisogno di accedervi.
Le autorizzazioni a livello di oggetto determinano il livello di accesso base per tutti i record di un oggetto. Le impostazioni predefinite a livello di organizzazione modificano le autorizzazioni per i record di cui un utente non è titolare. Le impostazioni di condivisione a livello di organizzazione possono essere impostate separatamente per ciascun tipo di oggetto.
Le impostazioni predefinite a livello di organizzazione non possono concedere agli utenti un accesso più ampio di quello di cui usufruiscono tramite le loro autorizzazioni a livello di oggetto.
Per determinare le impostazioni predefinite a livello di organizzazione necessarie per l'app, fatti le seguenti domande per ciascun oggetto:
- 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 (Privata)
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 (Privata) o Public Read Only (Sola lettura pubblica), un amministratore può concedere agli utenti autorizzazioni di accesso ai record aggiuntive 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 dei campi relativi a 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 Posizione deve essere impostato su 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
Usa le impostazioni predefinite a livello di organizzazione per specificare il livello di accesso base che l'utente soggetto a maggiori restrizioni dovrebbe avere.
- 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).
Per impostazione predefinita, una gerarchia dei ruoli concede automaticamente l'accesso ai record agli utenti che nella gerarchia si trovano al di sopra del titolare del record. Impostando un oggetto su Private (Privato), quei record diventano visibili solo ai loro titolari e a chi si trova a un livello superiore nella gerarchia dei ruoli. Seleziona la casella di controllo Grant Access Using Hierarchies (Concedi accesso tramite le gerarchie) per disabilitare l'accesso ai record agli utenti che si trovano al di sopra del titolare del record nella gerarchia degli oggetti personalizzati. Deselezionando questa casella di controllo per un oggetto personalizzato, solo il titolare del record e gli utenti a cui è stato concesso l'accesso in base a impostazioni predefinite a livello di organizzazione potranno accedere ai record.
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.
Una volta bloccati i dati con le impostazioni predefinite a livello di organizzazione, le impostazioni risultanti potrebbero essere troppo restrittive per alcuni utenti. È possibile quindi utilizzare i restanti controlli di sicurezza a livello di record (gerarchie dei ruoli, regole di condivisione e condivisione manuale) per concedere l'accesso ai record in modo selettivo a determinati dipendenti che ne hanno bisogno.
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.
Risorse
-
Impostazioni di condivisione
-
Considerazioni sulla condivisione
-
Impostazioni di condivisione predefinite a livello di organizzazione
-
Guida all'implementazione delle misure di sicurezza