¿Cómo funciona la seguridad de las clases de Apex?
Limite los usuarios que pueden ejecutar los métodos de un nivel superior concreto de clase de Apex en función de sus perfiles o de un conjunto de permisos asociado. Esta técnica le permite aplicar seguridad granular a operaciones de Apex en su organización.
Ediciones necesarias
| Disponible en: Salesforce Classic (no disponible en todas las organizaciones) y Lightning Experience |
| Disponible en: Performance Edition, Unlimited Edition, Developer Edition, Enterprise Edition y Database.com Edition |
Puede establecer la seguridad de clase de Apex a través de:
- La página de lista de clases de Apex
- Una página de detalles de clases de Apex
- Conjuntos de permisos
- Perfiles
Estos permisos solo se aplican a métodos que están en clases de Apex de nivel superior o puntos de entrada de transacciones Apex, como:
- Controladores de componentes Aura
- Métodos de
@AuraEnabledllamados desde componentes web Lightning - Controladores Visualforce
- Servicios de REST Apex
- Clases Apex asíncronas
global, o para clases que contengan métodos declarados como webService.Si los usuarios tienen el permiso Apex de autor, pueden acceder a todas las clases de Apex en la organización asociada, sin tener en cuenta la configuración de seguridad para clases individuales.
El permiso de una clase de Apex se selecciona solamente en el nivel superior. Por ejemplo, la clase A llama a la clase B. El usuario X tiene un perfil que puede acceder a la clase A, pero no a la clase B. El usuario X puede ejecutar el código en la clase B, pero solo a través de la clase A; el usuario X no puede invocar la clase B directamente. Del mismo modo, si un componente web Lightning llama a una clase Apex, la seguridad solo se verifica para esa clase principal. Si esa clase llama a una clase secundaria a la que el usuario no tiene permiso explícito para acceder, el usuario aún puede ejecutar ese código en la clase secundaria, pero solo a través de la clase principal.
Solo puede establecer la seguridad en clases Apex, no en desencadenadores.
- Establecer el acceso a clase de Apex desde la página de lista de clase
Limite los usuarios que pueden ejecutar los métodos de un nivel superior concreto de clase de Apex en función de sus perfiles. - Establecer el acceso a clase de Apex desde la página de detalles de clase
Limite los usuarios que pueden ejecutar los métodos de un nivel superior concreto de clase de Apex en función de sus perfiles. - Establecer el acceso a la clase de Apex desde los conjuntos de permisos
Puede especificar qué métodos de una clase de Apex de nivel superior se pueden ejecutar para un conjunto de permisos. - Configurar el acceso a la clase de Apex desde los perfiles
Especifique qué métodos de una clase de Apex de nivel superior se pueden ejecutar para un perfil. - Crear motivos de colaboración de Apex
Cuando cree la colaboración gestionada por Apex, cree motivos de colaboración de Apex para objetos personalizados individuales para indicar por qué se implementó la colaboración. - Calcular de nuevo la colaboración gestionada por Apex
Los desarrolladores pueden escribir clases de Apex por lotes que vuelvan a calcular la colaboración gestionada por Apex para un objeto personalizado específico.
