Como a segurança de classe do Apex funciona?
Limite quais usuários podem executar métodos em uma determinada classe de nível superior do Apex com base nos seus perfis ou em um conjunto de permissões associado. Essa técnica permite que você aplique segurança granular a operações do Apex em sua organização.
Edições obrigatórias
| Disponível em: Salesforce Classic (não disponível em todas as organizações) e Lightning Experience |
| Disponível em: Edições Performance, Unlimited, Developer, Enterprise e Database.com |
Você pode definir a segurança da classe do Apex via:
- A página da lista de classes do Apex
- Uma página de detalhes da classe do Apex
- Conjuntos de permissões
- Perfis
Essas permissões se aplicam apenas a métodos que estão em classes do Apex de nível superior ou pontos de entrada de transação do Apex, como:
- Controladores de componente do Aura
- Métodos de
@AuraEnabledchamados de componentes da Web Lightning - Controladores do Visualforce
- Serviços REST do Apex
- Classes assíncronas do Apex
global ou para as classes que contenham métodos declarados como webService.Usuários com a permissão Criar Apex podem acessar todas as classes do Apex na organização associada, independentemente das configurações de segurança de classes individuais.
A permissão para uma classe do Apex é verificada somente no nível superior. Por exemplo, classe A chama classe B. O usuário X tem um perfil que pode acessar a classe A, mas não a classe B. O usuário X pode executar o código na classe B, mas somente por meio da classe A; o usuário X não pode invocar a classe B diretamente. Da mesma forma, se um componente da Web Lightning chamar uma classe do Apex, a segurança será verificada apenas para essa classe primária. Se essa classe chamar uma classe secundária à qual o usuário não tem permissão explícita para acessar, o usuário ainda poderá executar esse código na classe secundária, mas apenas por meio da classe primária.
Você pode definir a segurança apenas em classes do Apex, não em acionadores.
- Configurar o acesso da classe do Apex a partir da página Lista de classes
Limite quais usuários podem executar métodos em uma determinada classe do Apex de nível superior com base em seus perfis. - Configurar o acesso da classe do Apex a partir da página Detalhes da classe
Limite quais usuários podem executar métodos em uma determinada classe do Apex de nível superior com base em seus perfis. - Configurar o acesso da classe do Apex de conjuntos de permissões
Você pode especificar os métodos de uma classe Apex de nível superior que são executáveis para um conjunto de permissões. - Definir o acesso da classe do Apex de perfis
Especifique quais métodos em uma classe do Apex de nível superior são executáveis para um perfil. - Criar motivos de compartilhamento do Apex
Ao criar o compartilhamento gerenciado do Apex, crie motivos de compartilhamento do Apex para objetos individuais personalizados a fim de indicar por que o compartilhamento foi implementado. - Recalcular o compartilhamento gerenciado do Apex
Os desenvolvedores podem gerar classes do Apex em lote que fazem o recálculo do compartilhamento gerenciado do Apex para determinado objeto personalizado.
