← Salesforce Platform Developer: Apex e Lightning
06 / 8 · 40 MIN

Segurança por versão e interfaces Visualforce

Rever autorização e encoding sem depender de pressupostos antigos sobre Apex.

Conceito e mecanismo

A versão de API faz parte da análise de segurança. A documentação atual indica que operações de base de dados passam a usar user mode por defeito em API 67; exemplos de API 66 ou anteriores podem depender de system mode. Declarar intenção explicitamente reduz ambiguidades durante atualizações. with sharing refere-se à partilha de registos e, por si só, não equivale a todos os controlos de CRUD e field-level security. Rever também o modo da operação e o contrato de dados. Security.stripInaccessible pode apoiar uma resposta que omita campos inacessíveis; é necessário usar o resultado sanitizado e decidir como explicar a informação indisponível.

Aplicação guiada

Para expor Apex a LWC, o método tem de ser static, public ou global, e anotado com AuraEnabled; o acesso à classe continua necessário. Não transformar uma falha de autorização em zeros financeiros nem resolver uma regressão concedendo acesso excessivo. Em Visualforce, uma controller extension pode acrescentar comportamento a um StandardController através do construtor apropriado, preservando as ações standard relevantes. A apresentação de texto externo exige encoding de acordo com o contexto. Desativar escaping para mostrar formatação pode transformar dados em markup; HTML e JavaScript têm necessidades diferentes. Os exemplos do curso não generalizam afirmações antigas de system mode para todas as versões nem usam a descrição resumida de triggers de uma fonte que apresentou ambiguidade.

NA PRÁTICA

Depois de uma atualização de API, um utilizador deixa de ler um campo restrito. A equipa revê o contrato, omite o campo quando apropriado e testa utilizadores representativos. Forçar system mode apenas para eliminar a mensagem contrariaria o requisito de acesso.

Armadilhas comuns

with sharing como sinónimo de FLS; sanitizar mas devolver a lista original; labels ou CSS como controlo de acesso; escape false para qualquer texto autenticado.

Tópicos relacionados: Modelo de dados, identidade e metadados · Coleções e escolha entre configuração e código · Consultas, DML e resultados de erro

Leva esta ideia contigo

Identificar versão, identidade, modo de acesso e contexto de saída. Autorização e apresentação são responsabilidades distintas.

Criar conta

Referência: Secure Apex Classes · Platform Developer guide Summer 25

Salesforce é uma marca comercial de Salesforce, Inc. A dr.pt é uma plataforma de preparação independente e não está afiliada, associada, patrocinada, autorizada nem aprovada por Salesforce. Os conteúdos e as perguntas são originais, não são perguntas oficiais de exame, e concluir os nossos testes não atribui nem garante qualquer certificação. Os nomes são usados apenas para identificar o tema. Todas as outras marcas pertencem aos respetivos titulares.