Risoluzione dei problemiAccesso ai recordAmministratore Salesforce

Un utente vede un record che non dovrebbe: come trovarne la causa

Un metodo passo dopo passo per diagnosticare perché un utente Salesforce vede un record che non dovrebbe: OWD, gerarchia dei ruoli, regole di condivisione e share.

AgentForceAccess 3 min di lettura
Molti fasci di luce convergenti dalla sagoma di un utente verso un singolo record, con una lente di ingrandimento

Perché questa persona vede quel record? è la domanda sull”accesso più comune in Salesforce, e la più difficile a cui rispondere a occhio, perché la piattaforma non decide mai la visibilità in un unico punto. Concede l”unione di diversi meccanismi. Questa guida ti dà un ordine ripetibile per individuare quello che ha aperto l”accesso.

Prima di tutto, il modello mentale

La condivisione in Salesforce è additiva e vince la più permissiva. Non stai cercando una regola che consente l”accesso e una regola che lo blocca. Stai cercando una qualsiasi singola concessione, perché una sola è sufficiente. (Per la stratificazione completa, vedi chi può vedere un record in Salesforce.)

Se anche un solo meccanismo concede l”accesso, l”utente ce l”ha. Il tuo compito è trovare quale.

Passo 1: leggi il pulsante Sharing

Sul record, clicca su Sharing (disponibile per gli oggetti il cui org-wide default non è completamente pubblico). L”elenco mostra gli utenti con accesso e una colonna Reason: Owner, Role Hierarchy, Sharing Rule, Manual Share, Team e così via. Nella maggior parte dei casi questo identifica immediatamente il colpevole.

Se l”utente non è nemmeno elencato lì ma vede comunque il record, sospetta un bypass a livello di profilo: vai al Passo 2.

Passo 2: escludi i bypass a livello di autorizzazione

Questi ignorano completamente il modello di condivisione:

  • View All Data / Modify All Data (autorizzazioni di sistema, ad esempio sul profilo System Administrator).
  • View All / Modify All a livello di oggetto su quello specifico oggetto.

Se l”utente ha una di queste tramite profilo o permission set, le modifiche alla condivisione non nasconderanno il record. Devi rimuovere l”autorizzazione. Controlla il suo profilo e ogni permission set assegnato.

Passo 3: percorri i livelli di condivisione, dall”alto verso il basso

Se si tratta davvero di una concessione di condivisione, individua quale livello la genera:

L”org-wide default è troppo aperto

Se l”OWD dell”oggetto è Public Read Only o Public Read/Write, chiunque abbia accesso all”oggetto vede ogni record. La soluzione è strutturale: restringi l”org-wide default e ri-concedi l”accesso in modo deliberato.

La gerarchia dei ruoli fa risalire l”accesso verso l”alto

Se l”utente si trova sopra il proprietario del record nella gerarchia dei ruoli e “Grant Access Using Hierarchies” è attivo, eredita automaticamente l”accesso del proprietario. Questa è la sorpresa più comune.

Una regola di condivisione troppo ampia

Una regola basata su criteri come Region = EMEA → condividi con il ruolo X può includere molte più persone del previsto, soprattutto dopo modifiche ai dati o ai ruoli. Esamina le regole che hanno come destinatario il ruolo dell”utente, i public group o il territorio.

Uno share manuale o implicito

  • Share manuale: qualcuno ha usato il pulsante Share del record.
  • Share implicito: l”accesso a un Account padre concede un accesso limitato in lettura ai suoi Case e Contact figli. Questo viene dimenticato di continuo, ed è sempre in sola lettura.
  • Apex managed sharing: del codice custom ha creato lo share; il pulsante Sharing lo mostra ma l”origine è nel codice.

Team e territori

L”appartenenza a un team di Account/Opportunity/Case, o un territorio corrispondente nell”ambito di Enterprise Territory Management, concedono l”accesso ciascuno in modo indipendente.

Passo 4: verifica che non sia un ritardo di ricalcolo

Se l”accesso appare incoerente, potresti star osservando il ricalcolo della condivisione che si completa dopo una recente modifica di proprietà, ruolo o regole. Lascialo terminare prima di dichiarare un bug.

Una checklist diagnostica

  1. Pulsante Sharing → leggi la Reason per quell”utente.
  2. Profilo + permission set → c”è qualche View All / Modify All?
  3. L”OWD è troppo aperto per questo oggetto?
  4. L”utente è sopra il proprietario nella gerarchia dei ruoli?
  5. Cӏ qualche regola di condivisione (specialmente basata su criteri) che lo include?
  6. Uno share manuale, implicito o Apex?
  7. Membro di un team o territorio corrispondente?
  8. Modifica recente → attendi il ricalcolo.

Il primo “sì” è la tua risposta, e potrebbe esserci più di un percorso che concede lo stesso accesso. Per il problema opposto, un utente che non riesce a vedere un record che dovrebbe, vedi la checklist diagnostica per l”accesso mancante.

Farlo in pochi secondi invece che in un pomeriggio

Percorrere otto livelli per ogni coppia utente-record, tra profili, permission set e sei meccanismi di condivisione, è esattamente il lavoro manuale ripetitivo che nasconde l”esposizione reale. AgentForceAccess lo fa per te: chiedi in linguaggio naturale perché un utente vede un record, e lui traccia ogni livello e cita la concessione precisa, così vai dritto alla soluzione.

Domande frequenti

Qual è il primo controllo più rapido?

Apri il record, clicca sul pulsante Sharing e leggi la colonna "Reason" per quell'utente. Indica il meccanismo che concede l'accesso (Owner, Role Hierarchy, Sharing Rule, Manual e così via) per la maggior parte degli oggetti standard. Verifica anche che l'utente non abbia semplicemente "View All Data" o "View All" a livello di oggetto.

Il pulsante Sharing dice "Role Hierarchy": e adesso?

Qualcuno che l'utente sovrasta nella gerarchia dei ruoli possiede il record (o lo ha ricevuto in condivisione) e l'opzione "Grant Access Using Hierarchies" è attiva per l'oggetto. Per rimuovere quell'accesso dovresti modificare la gerarchia, la proprietà del record o disabilitare l'accesso gerarchico per gli oggetti custom: nessuna scelta da fare alla leggera.

La causa potrebbe essere un'autorizzazione di profilo, non la condivisione?

Sì. "View All Data"/"Modify All Data" e "View All"/"Modify All" a livello di oggetto aggirano completamente il modello di condivisione. Se l'utente ha una di queste, nessuna modifica alla condivisione nasconderà il record: devi invece rimuovere l'autorizzazione.

Perché l'accesso compare e scompare in modo intermittente?

Ricalcolo della condivisione. Dopo cambi di proprietà, spostamenti di ruolo o modifiche alle regole, Salesforce rielabora gli share in modo asincrono. Durante quella finestra l'accesso può apparire incoerente. Lascia che il ricalcolo finisca prima di concludere che c'è un bug di configurazione.

Provalo sulla tua org

AgentForceAccess spiega, in linguaggio chiaro, perché un utente può vedere un record o un file — attraverso ogni meccanismo di condivisione di Salesforce.

Richiedi accesso anticipato