Resolução de problemasAcesso a registosAdministração Salesforce

Um utilizador não vê um registo que devia — como resolver

Porque é que um utilizador do Salesforce não vê um registo que devia — uma checklist por permissões de objeto, FLS, partilha e regras de restrição.

AgentForceAccess 4 min de leitura
A silhueta de um utilizador a tentar alcançar um registo bloqueado atrás de uma barreira translúcida

A imagem ao espelho de “porque é que este utilizador vê aquele registo” é igualmente comum: alguém devia conseguir ver um registo e não consegue. A boa notícia é que o acesso no Salesforce passa por uma sequência fixa de verificações — por isso pode isolar a falha de forma metódica em vez de adivinhar.

As duas verificações que todo o acesso a registos tem de passar

O Salesforce só concede acesso se ambas estas passarem:

  1. Nível do objeto — o utilizador tem CRUD no objeto e field-level security nos campos relevantes? (A partir de perfis e permission sets.)
  2. Nível do registo — o modelo de partilha concede este registo específico?

Uma falha em qualquer uma esconde o registo. Por isso a primeira tarefa é perceber qual a verificação que está a falhar — e o sintoma di-lo.

Leia o sintoma primeiro

SintomaVerificação que falhaIr para
Não encontra de todo o objeto/separadorPermissão de objeto ou visibilidade da aplicação/separadorPasso 1
Vê o objeto, mas não vê um registoPartilha ao nível do registo (ou regra de restrição)Passo 3
Abre o registo, mas os campos estão em brancoField-level securityPasso 2
Via-o ontem, hoje nãoUma alteração recente / recálculoPasso 4

Passo 1 — Permissões de objeto e visibilidade

Se o utilizador não consegue chegar ao objeto ou ao seu separador:

  • Confirme a permissão Read no objeto, no seu perfil ou num permission set.
  • Confirme que a aplicação e o separador estão visíveis para ele.

Sem acesso ao objeto não há registos, independentemente da partilha. Corrija isto primeiro. (Se a falha for ao guardar um registo e não ao visualizá-lo, a causa costuma ser um registo relacionado a que o utilizador não consegue chegar — ver insufficient access rights on cross-reference id.)

Passo 2 — Field-level security

Se o registo abre mas campos específicos estão vazios, o acesso ao nível do registo está bem — é a field-level security que está a esconder os campos. Conceda FLS para esses campos no perfil ou num permission set do utilizador. (Isto é uma definição de perfil/permission set, não de partilha — ver perfis vs permission sets vs sharing.)

Passo 3 — Partilha ao nível do registo

Se o utilizador tem acesso ao objeto mas não consegue chegar a um registo, percorra o modelo de partilha:

  • Org-wide default — se for Private, o utilizador só vê os registos de que é proprietário, os que pertencem a alguém abaixo dele na hierarquia de funções, ou os concedidos por uma regra/equipa/partilha manual. Se nada disto se aplicar, está aí a resposta — adicione uma sharing rule, uma associação a uma equipa ou uma partilha manual.
  • Hierarquia de funções — o utilizador está mesmo acima do proprietário? Se não, não há roll-up.
  • Uma regra de restrição está a filtrá-lo — as regras de restrição reduzem o acesso por cima da partilha. O utilizador pode ter acesso através da partilha mas ser excluído pelos critérios de uma regra de restrição. Verifique as regras de restrição no objeto para o permission set do utilizador.

Passo 4 — Alterações recentes e recálculo

Se o acesso desapareceu:

  • Procure alterações à propriedade, à hierarquia de funções, às sharing rules, a uma regra de restrição, ou às atribuições de permission sets do utilizador — qualquer uma pode remover o acesso.
  • Confirme que um recálculo de partilha terminou. Após alterações de propriedade/função/regra, o Salesforce reprocessa as partilhas de forma assíncrona e o acesso pode ficar atrasado durante essa janela.

Uma checklist de diagnóstico

  1. Consegue chegar ao objeto/separador? → permissão de objeto + visibilidade da aplicação/separador.
  2. Os campos aparecem? → field-level security.
  3. O OWD é Private sem partilha aplicável? → adicione partilha.
  4. Está acima do proprietário na hierarquia? → se necessário.
  5. Há uma regra de restrição a excluí-lo? → ajuste os critérios.
  6. Alteração recente ou recálculo em curso? → aguarde / reverta.

A primeira verificação que falha é a sua correção. E repare no problema inverso — acesso a mais — em um utilizador vê um registo que não devia.

Salte diretamente para a camada que falha

A parte lenta é testar cada camada uma a uma, muitas vezes iniciando sessão como o utilizador. O AgentForceAccess elimina isso: pergunte porque é que um utilizador não consegue ver um registo e ele indica qual a verificação que o bloqueia — permissão de objeto, field-level security, uma partilha em falta, ou uma regra de restrição — para que corrija a camada certa logo à primeira.

Perguntas frequentes

O utilizador vê o objeto mas não vê um registo específico. Porquê?

Isso é um problema ao nível do registo. Com um org-wide default Private, um utilizador só vê os registos de que é proprietário, os que pertencem a alguém abaixo dele na hierarquia de funções, ou os que uma sharing rule, equipa ou partilha manual lhe concede. Se nada disto se aplicar, o registo permanece oculto. Uma regra de restrição também pode estar a filtrá-lo.

O utilizador consegue abrir o registo mas campos importantes aparecem em branco. Porquê?

Isso é field-level security, não partilha de registos. O utilizador tem acesso ao registo, mas o seu perfil ou conjuntos de permissões ocultam esses campos. Conceda field-level security para os campos no permission set relevante.

O utilizador não vê de todo o objeto nem o separador. O que está errado?

Provavelmente falta-lhe a permissão Read no objeto, ou a aplicação/separador está oculta para o seu perfil. As permissões de objeto e a visibilidade de separadores/aplicações vêm de perfis e permission sets — corrija isso antes de olhar para o modelo de partilha.

O acesso funcionava ontem e deixou de funcionar. O que mudou?

Procure uma alteração recente à propriedade, à hierarquia de funções, às sharing rules, a uma regra de restrição, ou aos permission sets do utilizador — qualquer uma destas pode remover o acesso. Confirme também que um recálculo de partilha terminou, já que o acesso pode ficar atrasado durante o reprocessamento.

Veja na sua própria org

O AgentForceAccess explica, em linguagem clara, porque é que qualquer utilizador vê qualquer registo ou ficheiro — em todos os mecanismos de partilha do Salesforce.

Pedir acesso antecipado