Résumé
Une communauté Salesforce mal configurée peut entraîner l’exposition de données Salesforce sensibles à quiconque sur Internet. Les utilisateurs anonymes peuvent consulter des objets qui contiennent des informations sensibles, telles que des listes de clients, des dossiers d’assistance et des adresses e-mail d’employés.
Notre équipe de recherche a découvert de nombreuses communautés Salesforce accessibles au public qui sont mal configurées et exposent des informations sensibles.
Ce n’est ni la première, ni la dernière fois qu’une configuration SaaS génère un incident de sécurité potentiel, ce qui souligne la nécessité pour les équipes de sécurité d’évaluer en permanence leur exposition SaaS.
Ce guide explique comment un hacker peut exploiter cette mauvaise configuration et présente aux administrateurs Salesforce les étapes détaillées à suivre pour :
- Vous assurer que les autorisations de votre profil invité n’exposent pas des éléments que vous ne souhaitez pas voir exposés (enregistrements de comptes, calendriers des employés, etc.)
- Désactiver l’accès API pour votre profil invité
- Définir le propriétaire par défaut des enregistrements créés par des utilisateurs invités
- Activer l’accès utilisateur invité sécurisé
Impact
Au mieux, un acteur malveillant pourrait exploiter cette mauvaise configuration pour effectuer la reconnaissance d’une campagne de spear-phishing. Au pire, ils pourraient voler des informations sensibles sur l’entreprise, ses opérations, ses clients et ses partenaires.
Dans certains cas, un hacker expérimenté peut être en mesure de se déplacer latéralement et de récupérer des informations à partir d’autres services intégrés au compte Salesforce.
Les communautés Salesforce : qu’est-ce que c’est ?
Une communauté Salesforce permet à vos clients et partenaires d’interagir avec votre instance Salesforce depuis l’extérieur de votre organisation. Ils peuvent ouvrir des tickets d’assistance, poser des questions, gérer leurs abonnements et bien plus.
Les communautés sont publiques et, par défaut, indexées par Google. Bien que cela soit utile pour les clients et les partenaires, il est facile pour les hackers qui découvrent une vulnérabilité ou une mauvaise configuration de repérer et d’exploiter des communautés à grande échelle.
Comme vous le verrez, Salesforce est hautement personnalisable et peut être difficile à gérer. Il n’existe pas deux instances Salesforce identiques, elles comportent des centaines d’applications tierces, d’objets personnalisés et de configurations.
Contexte technique
Les communautés Salesforce fonctionnent grâce au framework Lightning de Salesforce. Lightning est un framework de développement rapide pour les sites mobiles et pour les ordinateurs.
Salesforce Lightning est centré sur les composants. Ces composants, appelés composants Aura, sont des objets autonomes qu’un développeur peut assembler pour créer des pages Web personnalisées.
Les composants Aura peuvent être utilisés pour réaliser des actions sur des objets Salesforce, comme l’affichage ou la mise à jour d’enregistrements. Les composants possèdent des contrôleurs qui exportent différentes méthodes pour effectuer certaines tâches.
La navigation sur un site communautaire avec un service proxy, tel que la suite Burp, nous montre Lightning en action. L’interface utilisateur Web d’une communauté utilise les terminaux HTTP /s/sfsites/aura.
Le navigateur utilise les terminaux Aura pour récupérer des informations sur le site et effectuer des actions côté serveur lorsque l’utilisateur interagit avec le site communautaire. Naturellement, les autorisations de l’utilisateur s’appliquent à ces actions.
L’appel des terminaux Aura est une simple requête HTTP, soit GET soit POST, qui se compose des paramètres suivants :
- pageURI – Le chemin d’accès au site, sans l’hôte. Par exemple : « /s/ ».
- token – Le token de l’utilisateur actuel. La valeur « non définie » indique un utilisateur invité.
- context – Le contexte de la session en cours, fourni par le site.
- message – Décrit l’action souhaitée. Il est possible d’exécuter de nombreuses méthodes dans le même appel Aura. Cette structure contient une liste d’actions, qui contiennent le descripteur de la méthode (un identifiant unique de la méthode) et les paramètres d’appel.
La structure du message est un JSON codé en URL. Voici un exemple :
{ "actions": [ { "id": "222;a", "descriptor": "serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData ", "callingDescriptor": "UNKNOWN", "params": {} } ] }
- {
- "actions": [
- {
- "id": "222;a",
- "descriptor": "serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData ",
- "callingDescriptor": "UNKNOWN",
- "params": {}
- }
- ]
- }
{ "actions": [ { "id": "222;a", "descriptor": "serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData ", "callingDescriptor": "UNKNOWN", "params": {} } ] }
- id – Une chaîne aléatoire qui peut être utilisée pour envoyer plus d’une action dans une seule demande. De cette façon, le navigateur peut faire correspondre les actions et les réponses.
- descriptor – La méthode spécifique pour appeler.
- callingDescriptor – Généralement « INCONNU », car ce paramètre est souvent ignoré.
- params – Utilisé pour fournir des paramètres à la méthode
Il existe de nombreuses méthodes différentes qu’un utilisateur non authentifié peut exécuter pour effectuer des actions, telles que :
- Obtenir des informations sur le site
- Obtenir des informations sur l’abonnement Salesforce
- Afficher les objets par défaut et personnalisés ainsi que leurs champs
- Récupérer les données et les enregistrements
Parmi les objets que vous pouvez consulter figurent les options Compte, Utilisateur, Dossier, Employé, Pièce jointe, Contact et Prospect.
Comment les hackers peuvent-ils exploiter des communautés mal configurées ?
Dans les sites mal configurés, le hacker peut effectuer une reconnaissance en recherchant des informations sur l’organisation, comme les utilisateurs, les objets et les champs qui exposent les noms et les adresses e-mail, et dans de nombreux cas, il peut infiltrer le système ou voler des informations.
Tout d’abord, le hacker doit trouver un site communautaire à exploiter. Il suffit d’utiliser la magie de Google. Il existe des « empreintes digitales » d’URL courantes qui indiquent qu’un site Web est géré par des communautés Salesforce :
- /s/topic
- /s/article
- /s/contactsupport
En utilisant des opérateurs tels que « inurl: » ainsi que le nom de la cible, par exemple, vous trouverez souvent le site communautaire souhaité :
L’étape suivante consiste à récupérer des informations sur le site. Le hacker peut le faire en utilisant la méthode suivante :
serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData
Cette méthode renvoie le domaine de l’organisation, certains paramètres de sécurité (par exemple, les domaines de politique de sécurité du contenu (CSP) autorisés) et les objets disponibles.
Le hacker peut recourir à différentes méthodes pour effectuer différentes actions telles que :
- Répertorier des objets Salesforce
- Répertorier des enregistrements
- Rechercher des enregistrements
- Récupérer un objet
- Récupérer des informations sur l’instance Salesforce
Récupérer des données sensibles
Les hackers peuvent essayer d’accéder directement aux données sensibles. Notre équipe de sécurité a trouvé une multitude d’enregistrements sensibles exposés lors de nos recherches.
Le hacker peut cibler des objets spécifiques et les examiner en utilisant la méthode :
aura://RecordUiController/ACTION$getObjectInfo
Qui renvoie des informations sur un objet. Cette méthode prend en charge tous les types d’objets, y compris ceux personnalisés.
Les informations comprennent les différents champs, leur configuration et les relations enfants de l’objet.
L’étape suivante consisterait à répertorier les enregistrements en utilisant la méthode :
serviceComponent://ui.force.components.controllers.lists.selectableListDataProvider.SelectableListDataProviderController/ACTION$getItems.
- serviceComponent://ui.force.components.controllers.lists.selectableListDataProvider.SelectableListDataProviderController/ACTION$getItems.
serviceComponent://ui.force.components.controllers.lists.selectableListDataProvider.SelectableListDataProviderController/ACTION$getItems.
Voici un exemple de liste d’enregistrements de comptes utilisant cette méthode :
Le hacker peut ensuite aller chercher encore plus d’informations en utilisant des méthodes telles que :
serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord
serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord
ou
aura://RecordUiController/ACTION$getRecordWithFields
- aura://RecordUiController/ACTION$getRecordWithFields
aura://RecordUiController/ACTION$getRecordWithFields
Pour récupérer des enregistrements pertinents avec plus de champs et d’objets associés.
Rechercher des composants tiers vulnérables
Un adversaire expérimenté peut tenter d’attaquer des composants personnalisés et tiers vulnérables.
Dans certains cas, il est possible de prendre le contrôle de l’ensemble de l’instance Salesforce simplement en exploitant une classe Apex personnalisée vulnérable exposée aux utilisateurs invités.
Lorsque l’on navigue sur le site, on constate que le navigateur charge plusieurs fichiers JavaScript différents avec des URL étranges, qui commencent par /l/ suivi par un objet JSON codé.
Dans ces fichiers JavaScript, nous pouvons trouver les définitions des terminaux les plus accessibles, y compris les terminaux personnalisés et/ou les applications tierces. Les définitions sont encodées au format JSON :
{ "descriptor": "compound://my_app.Component", "ac": [ { "n": "doAction", "descriptor": "apex://my_app.ComponentController/ACTION$doAction", "at": "SERVER", "rt": "apex://String", "pa": [], "st": true } ], "pa": [ { "name": "paramName", "type": "apex://String" } ] }
- {
- "descriptor": "compound://my_app.Component",
- "ac": [
- {
- "n": "doAction",
- "descriptor": "apex://my_app.ComponentController/ACTION$doAction",
- "at": "SERVER",
- "rt": "apex://String",
- "pa": [],
- "st": true
- }
- ],
- "pa": [
- {
- "name": "paramName",
- "type": "apex://String"
- }
- ]
- }
{ "descriptor": "compound://my_app.Component", "ac": [ { "n": "doAction", "descriptor": "apex://my_app.ComponentController/ACTION$doAction", "at": "SERVER", "rt": "apex://String", "pa": [], "st": true } ], "pa": [ { "name": "paramName", "type": "apex://String" } ] }
En analysant la réponse des chaînes JSON de forme similaire, les méthodes personnalisées et la procédure à suivre pour les appeler deviennent évidentes.
Alors, que faire ?
La gestion d’un site communautaire est un travail difficile. Il est important de s’assurer que les utilisateurs invités anonymes et les utilisateurs de la communauté soient uniquement autorisés à accéder aux enregistrements prévus et nécessaires. Il y a des informations que vous souhaitez partager avec le monde entier et d’autres pas.
Pour sécuriser votre environnement Salesforce, il est très important d’adhérer au principe du moindre privilège et de veiller à ce que les profils invités disposent uniquement des autorisations minimales requises.
Étape 1 – Vérifier les autorisations de votre profil invité
Accédez à votre Créateur de site (recherchez « Tous les sites » dans la configuration) et cliquez sur Paramètres ou sur l’icône d’engrenage sur la gauche.
Vous trouverez votre profil d’utilisateur invité sous Général. Cliquez dessus pour modifier les autorisations de l’utilisateur invité.
Ici, vous pouvez contrôler la sécurité au niveau du champ pour gérer l’accès à un niveau très poussé. C’est ici que vous devrez décider quel accès accorder en fonction des besoins de votre entreprise.
Étape 2 – Désactiver l’accès API
Il est important de s’assurer que la case API activée est décochée. Il est recommandé de désactiver Accès aux activités également.
Il est important de surveiller en permanence les autorisations et les rôles de partage des utilisateurs invités et de la communauté, et de garder un œil sur les documents qu’ils possèdent (et leurs objets associés) pour s’assurer que les informations sensibles ne deviennent pas accessibles au public.
Étape 3 – Définir le propriétaire par défaut des enregistrements créés par des utilisateurs invités
Vous pouvez accéder directement aux espaces de travail de votre site, ou bien utiliser le créateur de site pour aller dans l’espace de travail Administration :
Sous Préférences, assurez-vous de configurer un propriétaire par défaut pour les enregistrements créés par les utilisateurs invités et, dans la plupart des cas, désactivez Permettre aux utilisateurs invités de voir les membres de ce site.
Étape 4 – Activer l’accès sécurisé aux enregistrements des utilisateurs invités
Vérifiez que le paramètre d’accès par défaut pour les utilisateurs invités est sécurisé : allez dans le menu Configuration et recherchez Paramètres de partage. Trouvez l’option Activer l’accès sécurisé aux enregistrements des utilisateurs invités et vérifiez qu’elle est cochée.
Salesforce fait tout pour vous aider à prendre des décisions intelligentes concernant l’accès des invités. Depuis la version été 2020, Salesforce a rendu impossible la désactivation de ce paramètre. De plus, il est désormais impossible d’accorder aux utilisateurs invités les autorisations pour Afficher tous les utilisateurs et de leur donner accès à toutes les données.
Il est toutefois primordial de revoir les paramètres de configuration. Salesforce ne peut pas toutes les désactiver pour vous, car chaque utilisateur a des exigences différentes.
Conclusion
Comme vous pouvez le constater, avec des applications SaaS aussi complexes et personnalisables que Salesforce, il faut se préoccuper d’innombrables paramètres de configuration et autorisations.
La plupart des organisations déploient des dizaines d’applications SaaS autorisées, chacune avec ses propres objets, modèles d’autorisations, API et fonctionnalités de partage.
C’est pourquoi nous avons conçu DatAdvantage Cloud, afin de fournir un outil centralisé pour détecter les risques, ajuster les privilèges et effectuer des enquêtes sur toutes vos applications SaaS autorisées.
Annexe : les descripteurs Aura et comment les utiliser
serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData
- serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData
serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData
- Aucun paramètre
Récupère les données de l’application, y compris une liste d’objets qui incluent souvent des objets personnalisés et le domaine de connexion Salesforce.
serviceComponent://ui.global.components.one.one.controller.OneController/ACTION$getCurrentApp
- serviceComponent://ui.global.components.one.one.controller.OneController/ACTION$getCurrentApp
serviceComponent://ui.global.components.one.one.controller.OneController/ACTION$getCurrentApp
- Aucun paramètre
Permet d’obtenir plus d’informations sur l’application, y compris une liste étendue d’objets.
aura://RecordUiController/ACTION$getObjectInfo
- ObjectApiName (String) – Le nom de l’objet
Cette fonction renvoie la définition de l’objet : ses champs, ses relations et sa configuration.
serviceComponent://ui.force.components.controllers.lists.selectableListDataProvider.SelectableListDataProviderController/ACTION$getItems
- serviceComponent://ui.force.components.controllers.lists.selectableListDataProvider.SelectableListDataProviderController/ACTION$getItems
serviceComponent://ui.force.components.controllers.lists.selectableListDataProvider.SelectableListDataProviderController/ACTION$getItems
- entityNameOrId (String) – Le nom de l’objet à lister. Par exemple : « Compte » ou « Utilisateur »
- pageSize (Int) – Nombre d’enregistrements à récupérer. Jusqu’à 1 000
- currentPage(int) – S’il y a plus d’enregistrements pageSize, utilisez cette commande pour obtenir les pages suivantes.
- getCount (Boolean) – Si le nombre total d’enregistrements doit être récupéré.
- layoutType (String) – La mise en page. Indiquez « FULL » pour obtenir plus de données
- enableRowActions(Boolean) – true
- useTimeout (Boolean) – false
Liste les enregistrements des objets spécifiés.
serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord
serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord
- recordDescriptor(string) – le « descripteur » de l’enregistrement – utilisez le format suivant :
{id}.undefined.null.null.null.Id.VIEW.false.null.{fields}.null
- {id}.undefined.null.null.null.Id.VIEW.false.null.{fields}.null
{id}.undefined.null.null.null.Id.VIEW.false.null.{fields}.null
- ID – l’ID de l’enregistrement à récupérer, champs – un champ à renvoyer séparé par des virgules. Remplacez tous les points « . » par « ;2 ». Par exemple :
00500000000XxXXWXX.undefined.null.null.null.Id.VIEW.false.null.Name,CreateBy;2Name.null
- 00500000000XxXXWXX.undefined.null.null.null.Id.VIEW.false.null.Name,CreateBy;2Name.null
00500000000XxXXWXX.undefined.null.null.null.Id.VIEW.false.null.Name,CreateBy;2Name.null
Autres terminaux non documentés
aura://ActionsController/ACTION$getActionLayout aura://ActionsController/ACTION$getGlobalActions aura://ActionsController/ACTION$getListViewActions aura://ActionsController/ACTION$getLookupActions aura://ActionsController/ACTION$getMRUListActions aura://ActionsController/ACTION$getObjectCreateActions aura://ActionsController/ACTION$getQuickActionDefaults aura://ActionsController/ACTION$getRecordActions aura://ActionsController/ACTION$getRecordEditActions aura://ActionsController/ACTION$getRelatedListActions aura://ActionsController/ACTION$getRelatedListRecordActions aura://ActionsController/ACTION$getRelatedListsActions aura://ApexActionController/ACTION$execute aura://AppsController/ACTION$getNavItems aura://CanvasController/ACTION$getCanvasData aura://CommerceCatalogController/ACTION$getProduct aura://CommerceCatalogController/ACTION$getProductCategoryPath aura://CommerceImporterController/ACTION$importProducts aura://CommerceSearchController/ACTION$searchProducts aura://CommerceStorePricingController/ACTION$getProductPrice aura://ComponentController/ACTION$getApplication aura://ComponentController/ACTION$getApplicationDef aura://ComponentController/ACTION$getComponent aura://ComponentController/ACTION$getComponentDef aura://ComponentController/ACTION$getComponents aura://ComponentController/ACTION$getDefinitions aura://ComponentController/ACTION$getEventDef aura://ComponentController/ACTION$loadLabels aura://ComponentController/ACTION$reportDeprecationUsages aura://ComponentController/ACTION$reportFailedAction aura://ComponentController/ACTION$reportUsages aura://ConversationController/ACTION$getConversationCallStructureAndInsights aura://DynamicComponentController/ACTION$getTemplateDescriptorWithExpansionBundle aura://HostConfigController/ACTION$getConfigData aura://LabelController/ACTION$getLabel aura://LightningExperienceAssistantPlatformController/ACTION$getActiveQuestionnaires aura://LightningExperienceAssistantPlatformController/ACTION$getActiveScenarios aura://LightningExperienceAssistantPlatformController/ACTION$getAssistant aura://LightningExperienceAssistantPlatformController/ACTION$getQuestionnaire aura://LightningExperienceAssistantPlatformController/ACTION$saveAssistant aura://LightningExperienceAssistantPlatformController/ACTION$saveQuestionnaire aura://LinkedInSalesNavigatorController/ACTION$getSalesAccessToken aura://LinkedInSalesNavigatorController/ACTION$getSignupUrl aura://ListUiController/ACTION$getListInfoById aura://ListUiController/ACTION$getListInfoByName aura://ListUiController/ACTION$getListRecordsById aura://ListUiController/ACTION$getListRecordsByName aura://ListUiController/ACTION$getListUiById aura://ListUiController/ACTION$getListUiByName aura://ListUiController/ACTION$getListsByObjectName aura://LookupController/ACTION$getLookupRecords aura://ManagedContentController/ACTION$getManagedContentByTopicsAndContentKeys aura://ManagedContentController/ACTION$getPublishedManagedContentListByContentKey aura://MruListUiController/ACTION$getMruListInfo aura://MruListUiController/ACTION$getMruListRecords aura://MruListUiController/ACTION$getMruListUi aura://NavEventManagerController/ACTION$getClassicNonSetupPageReferenceMappings aura://NavEventManagerController/ACTION$getClassicSetupPageReferenceMappings aura://NavEventManagerController/ACTION$getResolvedIntegrationUrl aura://NavigationMenuController/ACTION$getCommunityNavigationMenu aura://OrchestrationController/ACTION$getOrchestrationInstance aura://OrchestrationController/ACTION$getOrchestrationInstanceCollection aura://OrchestrationController/ACTION$publishOrchestrationEvent aura://RecordMruController/ACTION$updateMru aura://RecordUiController/ACTION$createRecord aura://RecordUiController/ACTION$deleteRecord aura://RecordUiController/ACTION$executeAggregateUi aura://RecordUiController/ACTION$executeGraphQL aura://RecordUiController/ACTION$findDuplicates aura://RecordUiController/ACTION$getAggregateUi aura://RecordUiController/ACTION$getDedupeConfig aura://RecordUiController/ACTION$getDuplicateConfig aura://RecordUiController/ACTION$getFormByName aura://RecordUiController/ACTION$getLayout aura://RecordUiController/ACTION$getLayoutUserState aura://RecordUiController/ACTION$getObjectInfo aura://RecordUiController/ACTION$getObjectInfos aura://RecordUiController/ACTION$getPicklistValues aura://RecordUiController/ACTION$getPicklistValuesByRecordType aura://RecordUiController/ACTION$getRecordAvatars aura://RecordUiController/ACTION$getRecordCloneDefaults aura://RecordUiController/ACTION$getRecordCreateDefaults aura://RecordUiController/ACTION$getRecordDefaultsTemplateClone aura://RecordUiController/ACTION$getRecordDefaultsTemplateForCreate aura://RecordUiController/ACTION$getRecordUis aura://RecordUiController/ACTION$getRecordWithFields aura://RecordUiController/ACTION$getRecordWithLayouts aura://RecordUiController/ACTION$getRecordsWithFields aura://RecordUiController/ACTION$getRecordsWithLayouts aura://RecordUiController/ACTION$getValidationRulesInfo aura://RecordUiController/ACTION$postRecordAvatarAssociation aura://RecordUiController/ACTION$updateLayoutUserState aura://RecordUiController/ACTION$updateRecord aura://RelatedListUiController/ACTION$getRelatedListInfo aura://RelatedListUiController/ACTION$getRelatedListInfoBatch aura://RelatedListUiController/ACTION$getRelatedListInfoByApiName aura://RelatedListUiController/ACTION$getRelatedListInfoCollection aura://RelatedListUiController/ACTION$getRelatedListRecordCount aura://RelatedListUiController/ACTION$getRelatedListRecords aura://RelatedListUiController/ACTION$getRelatedListRecordsBatch aura://RelatedListUiController/ACTION$getRelatedListsRecordCount aura://RelatedListUiController/ACTION$updateRelatedListInfoByApiName aura://SearchGridLWCController/ACTION$updateUserColumnWidthPref aura://SeoPropertiesController/ACTION$getRecordSeoProperties aura://SitesController/ACTION$searchSite aura://StyleController/ACTION$applyTokens aura://WaveController/ACTION$deleteDataset aura://WaveController/ACTION$deleteRecipe aura://WaveController/ACTION$executeQueryByInputRep aura://WaveController/ACTION$getAnalyticsLimits aura://WaveController/ACTION$getDataflowJob aura://WaveController/ACTION$getDataflowJobNode aura://WaveController/ACTION$getDataflowJobNodes aura://WaveController/ACTION$getDataflowJobs aura://WaveController/ACTION$getDataflowJobsByDataflowId aura://WaveController/ACTION$getDataset aura://WaveController/ACTION$getDatasets aura://WaveController/ACTION$getRecipe aura://WaveController/ACTION$getRecipes aura://WaveController/ACTION$getReplicatedDatasets aura://WaveController/ACTION$getSchedule aura://WaveController/ACTION$getWaveFolders aura://WaveController/ACTION$getXmd aura://WaveController/ACTION$startDataflow aura://WaveController/ACTION$updateDataflowJob aura://WaveController/ACTION$updateSchedule serviceComponent://ui.chatter.components.aura.components.forceChatter.groups.actions.EditGroupNotificationSettingsController/ACTION$getNotificationSettings serviceComponent://ui.chatter.components.aura.components.forceChatter.groups.actions.EditGroupNotificationSettingsController/ACTION$setNotificationSettings serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$addParticipants serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$createMessage serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagesDetail serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagesListData serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagingPermAndPref serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMoreReplies serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getRichTextConfig serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getUserDetails serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$removeParticipants serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableAttributeLoaderController/ACTION$getComponentAttributes serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableComponentLoaderController/ACTION$getAudienceTargetedPageComponent serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableComponentLoaderController/ACTION$getPageComponent serviceComponent://ui.comm.runtime.components.aura.components.siteforce.network.tracking.NetworkTrackingController/ACTION$createLogRecord serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$getBootstrapCacheExpiration serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$getTopicDescription serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$isValidSObjectId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$setCurrentApp serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$validateRoute serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getActionOverrides serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getArticleUrlNameAndVersionId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getArticleVersionId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCMSContentTypeAndURLName serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCMSContentTypeUrlnameAndId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCategoryPath serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getNameFieldValue serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getPersonAccountIdFromContactId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$isAllowViewEditConvertedLeadsOn serviceComponent://ui.comm.runtime.components.aura.components.siteforce.service.ServiceBodyController/ACTION$getTopicImageUrlFromContextId serviceComponent://ui.communities.components.aura.components.forceCommunity.baseSearch.BaseSearchController/ACTION$getCrossObjectDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getArticleDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getCombinedDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getCrossObjectDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getQuestionDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.LWCRecordDetailController/ACTION$getInitData serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopic serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopicFromEntityId serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopicFromUrl serviceComponent://ui.communities.components.aura.components.forceCommunity.navigationMenu.NavigationMenuDataProviderController/ACTION$getNavigationMenu serviceComponent://ui.communities.components.aura.components.forceCommunity.signalCollector.SignalCollectorController/ACTION$sendSignals serviceComponent://ui.force.components.controllers.action.ActionController/ACTION$getServerSideComponent serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$findMatches serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$getConfig serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$loadObjectApiInfo serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$loadRecords serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$cloneRecordWithRelatedEntities serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getDetailComponent serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getEntityConfig serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getNextRecordLayout serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getPostSaveNavigationEvent serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getRecord serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$saveSectionState serviceComponent://ui.force.components.controllers.dynamicLabel.UiDynamicLabelProviderController/ACTION$getLabel serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData serviceComponent://ui.force.components.controllers.inlineEdit.InlineEditController/ACTION$getNameField serviceComponent://ui.force.components.controllers.inlineEdit.InlineEditController/ACTION$getPostSaveNavigationEvent serviceComponent://ui.force.components.controllers.logoutHandler.LogoutHandlerController/ACTION$getLogoutURL serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$createQuickActionRecords serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$createRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$deleteRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveQuickActionRecords serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveRecords serviceComponent://ui.force.components.controllers.recordLayoutBroker.RecordLayoutBrokerController/ACTION$getLayout serviceComponent://ui.force.components.controllers.recordLayoutBroker.RecordLayoutBrokerController/ACTION$getRecordAndLayout serviceComponent://ui.force.impl.aura.components.force.recordEditActions.RecordEditActionsController/ACTION$getEditActions serviceComponent://ui.global.components.one.actionsManager.ActionsManagerController/ACTION$handleAction serviceComponent://ui.identity.components.sessiontimeoutwarn.SessionTimeoutWarnController/ACTION$getSessionRefreshAction serviceComponent://ui.identity.components.sessiontimeoutwarn.SessionTimeoutWarnController/ACTION$getSessionTimeoutConfig serviceComponent://ui.instrumentation.components.beacon.InstrumentationBeaconController/ACTION$getLocators serviceComponent://ui.instrumentation.components.beacon.InstrumentationBeaconController/ACTION$sendData serviceComponent://ui.search.components.forcesearch.sgdp.MRUCacheController/ACTION$getGlobalMrus serviceComponent://ui.search.components.forcesearch.sgdp.PermsAndPrefsCacheController/ACTION$getPermsAndPrefs serviceComponent://ui.search.components.forcesearch.sgdp.ResultsFiltersCacheController/ACTION$getResultsFilterMetadata serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getEntityLabels serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getEntityNames serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getScopeMaps serviceComponent://ui.self.service.components.profileMenu.ProfileMenuController/ACTION$getContextUserPhotoUrlAndUpdatedName serviceComponent://ui.self.service.components.profileMenu.ProfileMenuController/ACTION$getProfileMenuResponse serviceComponent://ui.sfa.components.nativeimport.ImportButtonController/ACTION$getConfig
- aura://ActionsController/ACTION$getActionLayout
- aura://ActionsController/ACTION$getGlobalActions
- aura://ActionsController/ACTION$getListViewActions
- aura://ActionsController/ACTION$getLookupActions
- aura://ActionsController/ACTION$getMRUListActions
- aura://ActionsController/ACTION$getObjectCreateActions
- aura://ActionsController/ACTION$getQuickActionDefaults
- aura://ActionsController/ACTION$getRecordActions
- aura://ActionsController/ACTION$getRecordEditActions
- aura://ActionsController/ACTION$getRelatedListActions
- aura://ActionsController/ACTION$getRelatedListRecordActions
- aura://ActionsController/ACTION$getRelatedListsActions
- aura://ApexActionController/ACTION$execute
- aura://AppsController/ACTION$getNavItems
- aura://CanvasController/ACTION$getCanvasData
- aura://CommerceCatalogController/ACTION$getProduct
- aura://CommerceCatalogController/ACTION$getProductCategoryPath
- aura://CommerceImporterController/ACTION$importProducts
- aura://CommerceSearchController/ACTION$searchProducts
- aura://CommerceStorePricingController/ACTION$getProductPrice
- aura://ComponentController/ACTION$getApplication
- aura://ComponentController/ACTION$getApplicationDef
- aura://ComponentController/ACTION$getComponent
- aura://ComponentController/ACTION$getComponentDef
- aura://ComponentController/ACTION$getComponents
- aura://ComponentController/ACTION$getDefinitions
- aura://ComponentController/ACTION$getEventDef
- aura://ComponentController/ACTION$loadLabels
- aura://ComponentController/ACTION$reportDeprecationUsages
- aura://ComponentController/ACTION$reportFailedAction
- aura://ComponentController/ACTION$reportUsages
- aura://ConversationController/ACTION$getConversationCallStructureAndInsights
- aura://DynamicComponentController/ACTION$getTemplateDescriptorWithExpansionBundle
- aura://HostConfigController/ACTION$getConfigData
- aura://LabelController/ACTION$getLabel
- aura://LightningExperienceAssistantPlatformController/ACTION$getActiveQuestionnaires
- aura://LightningExperienceAssistantPlatformController/ACTION$getActiveScenarios
- aura://LightningExperienceAssistantPlatformController/ACTION$getAssistant
- aura://LightningExperienceAssistantPlatformController/ACTION$getQuestionnaire
- aura://LightningExperienceAssistantPlatformController/ACTION$saveAssistant
- aura://LightningExperienceAssistantPlatformController/ACTION$saveQuestionnaire
- aura://LinkedInSalesNavigatorController/ACTION$getSalesAccessToken
- aura://LinkedInSalesNavigatorController/ACTION$getSignupUrl
- aura://ListUiController/ACTION$getListInfoById
- aura://ListUiController/ACTION$getListInfoByName
- aura://ListUiController/ACTION$getListRecordsById
- aura://ListUiController/ACTION$getListRecordsByName
- aura://ListUiController/ACTION$getListUiById
- aura://ListUiController/ACTION$getListUiByName
- aura://ListUiController/ACTION$getListsByObjectName
- aura://LookupController/ACTION$getLookupRecords
- aura://ManagedContentController/ACTION$getManagedContentByTopicsAndContentKeys
- aura://ManagedContentController/ACTION$getPublishedManagedContentListByContentKey
- aura://MruListUiController/ACTION$getMruListInfo
- aura://MruListUiController/ACTION$getMruListRecords
- aura://MruListUiController/ACTION$getMruListUi
- aura://NavEventManagerController/ACTION$getClassicNonSetupPageReferenceMappings
- aura://NavEventManagerController/ACTION$getClassicSetupPageReferenceMappings
- aura://NavEventManagerController/ACTION$getResolvedIntegrationUrl
- aura://NavigationMenuController/ACTION$getCommunityNavigationMenu
- aura://OrchestrationController/ACTION$getOrchestrationInstance
- aura://OrchestrationController/ACTION$getOrchestrationInstanceCollection
- aura://OrchestrationController/ACTION$publishOrchestrationEvent
- aura://RecordMruController/ACTION$updateMru
- aura://RecordUiController/ACTION$createRecord
- aura://RecordUiController/ACTION$deleteRecord
- aura://RecordUiController/ACTION$executeAggregateUi
- aura://RecordUiController/ACTION$executeGraphQL
- aura://RecordUiController/ACTION$findDuplicates
- aura://RecordUiController/ACTION$getAggregateUi
- aura://RecordUiController/ACTION$getDedupeConfig
- aura://RecordUiController/ACTION$getDuplicateConfig
- aura://RecordUiController/ACTION$getFormByName
- aura://RecordUiController/ACTION$getLayout
- aura://RecordUiController/ACTION$getLayoutUserState
- aura://RecordUiController/ACTION$getObjectInfo
- aura://RecordUiController/ACTION$getObjectInfos
- aura://RecordUiController/ACTION$getPicklistValues
- aura://RecordUiController/ACTION$getPicklistValuesByRecordType
- aura://RecordUiController/ACTION$getRecordAvatars
- aura://RecordUiController/ACTION$getRecordCloneDefaults
- aura://RecordUiController/ACTION$getRecordCreateDefaults
- aura://RecordUiController/ACTION$getRecordDefaultsTemplateClone
- aura://RecordUiController/ACTION$getRecordDefaultsTemplateForCreate
- aura://RecordUiController/ACTION$getRecordUis
- aura://RecordUiController/ACTION$getRecordWithFields
- aura://RecordUiController/ACTION$getRecordWithLayouts
- aura://RecordUiController/ACTION$getRecordsWithFields
- aura://RecordUiController/ACTION$getRecordsWithLayouts
- aura://RecordUiController/ACTION$getValidationRulesInfo
- aura://RecordUiController/ACTION$postRecordAvatarAssociation
- aura://RecordUiController/ACTION$updateLayoutUserState
- aura://RecordUiController/ACTION$updateRecord
- aura://RelatedListUiController/ACTION$getRelatedListInfo
- aura://RelatedListUiController/ACTION$getRelatedListInfoBatch
- aura://RelatedListUiController/ACTION$getRelatedListInfoByApiName
- aura://RelatedListUiController/ACTION$getRelatedListInfoCollection
- aura://RelatedListUiController/ACTION$getRelatedListRecordCount
- aura://RelatedListUiController/ACTION$getRelatedListRecords
- aura://RelatedListUiController/ACTION$getRelatedListRecordsBatch
- aura://RelatedListUiController/ACTION$getRelatedListsRecordCount
- aura://RelatedListUiController/ACTION$updateRelatedListInfoByApiName
- aura://SearchGridLWCController/ACTION$updateUserColumnWidthPref
- aura://SeoPropertiesController/ACTION$getRecordSeoProperties
- aura://SitesController/ACTION$searchSite
- aura://StyleController/ACTION$applyTokens
- aura://WaveController/ACTION$deleteDataset
- aura://WaveController/ACTION$deleteRecipe
- aura://WaveController/ACTION$executeQueryByInputRep
- aura://WaveController/ACTION$getAnalyticsLimits
- aura://WaveController/ACTION$getDataflowJob
- aura://WaveController/ACTION$getDataflowJobNode
- aura://WaveController/ACTION$getDataflowJobNodes
- aura://WaveController/ACTION$getDataflowJobs
- aura://WaveController/ACTION$getDataflowJobsByDataflowId
- aura://WaveController/ACTION$getDataset
- aura://WaveController/ACTION$getDatasets
- aura://WaveController/ACTION$getRecipe
- aura://WaveController/ACTION$getRecipes
- aura://WaveController/ACTION$getReplicatedDatasets
- aura://WaveController/ACTION$getSchedule
- aura://WaveController/ACTION$getWaveFolders
- aura://WaveController/ACTION$getXmd
- aura://WaveController/ACTION$startDataflow
- aura://WaveController/ACTION$updateDataflowJob
- aura://WaveController/ACTION$updateSchedule
- serviceComponent://ui.chatter.components.aura.components.forceChatter.groups.actions.EditGroupNotificationSettingsController/ACTION$getNotificationSettings
- serviceComponent://ui.chatter.components.aura.components.forceChatter.groups.actions.EditGroupNotificationSettingsController/ACTION$setNotificationSettings
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$addParticipants
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$createMessage
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagesDetail
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagesListData
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagingPermAndPref
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMoreReplies
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getRichTextConfig
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getUserDetails
- serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$removeParticipants
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableAttributeLoaderController/ACTION$getComponentAttributes
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableComponentLoaderController/ACTION$getAudienceTargetedPageComponent
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableComponentLoaderController/ACTION$getPageComponent
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.network.tracking.NetworkTrackingController/ACTION$createLogRecord
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$getBootstrapCacheExpiration
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$getTopicDescription
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$isValidSObjectId
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$setCurrentApp
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$validateRoute
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getActionOverrides
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getArticleUrlNameAndVersionId
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getArticleVersionId
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCMSContentTypeAndURLName
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCMSContentTypeUrlnameAndId
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCategoryPath
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getNameFieldValue
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getPersonAccountIdFromContactId
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$isAllowViewEditConvertedLeadsOn
- serviceComponent://ui.comm.runtime.components.aura.components.siteforce.service.ServiceBodyController/ACTION$getTopicImageUrlFromContextId
- serviceComponent://ui.communities.components.aura.components.forceCommunity.baseSearch.BaseSearchController/ACTION$getCrossObjectDeflection
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getArticleDeflection
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getCombinedDeflection
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getCrossObjectDeflection
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getQuestionDeflection
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.LWCRecordDetailController/ACTION$getInitData
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopic
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopicFromEntityId
- serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopicFromUrl
- serviceComponent://ui.communities.components.aura.components.forceCommunity.navigationMenu.NavigationMenuDataProviderController/ACTION$getNavigationMenu
- serviceComponent://ui.communities.components.aura.components.forceCommunity.signalCollector.SignalCollectorController/ACTION$sendSignals
- serviceComponent://ui.force.components.controllers.action.ActionController/ACTION$getServerSideComponent
- serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$findMatches
- serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$getConfig
- serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$loadObjectApiInfo
- serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$loadRecords
- serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$cloneRecordWithRelatedEntities
- serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getDetailComponent
- serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getEntityConfig
- serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getNextRecordLayout
- serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getPostSaveNavigationEvent
- serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getRecord
- serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$saveSectionState
- serviceComponent://ui.force.components.controllers.dynamicLabel.UiDynamicLabelProviderController/ACTION$getLabel
- serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData
- serviceComponent://ui.force.components.controllers.inlineEdit.InlineEditController/ACTION$getNameField
- serviceComponent://ui.force.components.controllers.inlineEdit.InlineEditController/ACTION$getPostSaveNavigationEvent
- serviceComponent://ui.force.components.controllers.logoutHandler.LogoutHandlerController/ACTION$getLogoutURL
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$createQuickActionRecords
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$createRecord
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$deleteRecord
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveQuickActionRecords
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveRecord
- serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveRecords
- serviceComponent://ui.force.components.controllers.recordLayoutBroker.RecordLayoutBrokerController/ACTION$getLayout
- serviceComponent://ui.force.components.controllers.recordLayoutBroker.RecordLayoutBrokerController/ACTION$getRecordAndLayout
- serviceComponent://ui.force.impl.aura.components.force.recordEditActions.RecordEditActionsController/ACTION$getEditActions
- serviceComponent://ui.global.components.one.actionsManager.ActionsManagerController/ACTION$handleAction
- serviceComponent://ui.identity.components.sessiontimeoutwarn.SessionTimeoutWarnController/ACTION$getSessionRefreshAction
- serviceComponent://ui.identity.components.sessiontimeoutwarn.SessionTimeoutWarnController/ACTION$getSessionTimeoutConfig
- serviceComponent://ui.instrumentation.components.beacon.InstrumentationBeaconController/ACTION$getLocators
- serviceComponent://ui.instrumentation.components.beacon.InstrumentationBeaconController/ACTION$sendData
- serviceComponent://ui.search.components.forcesearch.sgdp.MRUCacheController/ACTION$getGlobalMrus
- serviceComponent://ui.search.components.forcesearch.sgdp.PermsAndPrefsCacheController/ACTION$getPermsAndPrefs
- serviceComponent://ui.search.components.forcesearch.sgdp.ResultsFiltersCacheController/ACTION$getResultsFilterMetadata
- serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getEntityLabels
- serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getEntityNames
- serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getScopeMaps
- serviceComponent://ui.self.service.components.profileMenu.ProfileMenuController/ACTION$getContextUserPhotoUrlAndUpdatedName
- serviceComponent://ui.self.service.components.profileMenu.ProfileMenuController/ACTION$getProfileMenuResponse
- serviceComponent://ui.sfa.components.nativeimport.ImportButtonController/ACTION$getConfig
aura://ActionsController/ACTION$getActionLayout aura://ActionsController/ACTION$getGlobalActions aura://ActionsController/ACTION$getListViewActions aura://ActionsController/ACTION$getLookupActions aura://ActionsController/ACTION$getMRUListActions aura://ActionsController/ACTION$getObjectCreateActions aura://ActionsController/ACTION$getQuickActionDefaults aura://ActionsController/ACTION$getRecordActions aura://ActionsController/ACTION$getRecordEditActions aura://ActionsController/ACTION$getRelatedListActions aura://ActionsController/ACTION$getRelatedListRecordActions aura://ActionsController/ACTION$getRelatedListsActions aura://ApexActionController/ACTION$execute aura://AppsController/ACTION$getNavItems aura://CanvasController/ACTION$getCanvasData aura://CommerceCatalogController/ACTION$getProduct aura://CommerceCatalogController/ACTION$getProductCategoryPath aura://CommerceImporterController/ACTION$importProducts aura://CommerceSearchController/ACTION$searchProducts aura://CommerceStorePricingController/ACTION$getProductPrice aura://ComponentController/ACTION$getApplication aura://ComponentController/ACTION$getApplicationDef aura://ComponentController/ACTION$getComponent aura://ComponentController/ACTION$getComponentDef aura://ComponentController/ACTION$getComponents aura://ComponentController/ACTION$getDefinitions aura://ComponentController/ACTION$getEventDef aura://ComponentController/ACTION$loadLabels aura://ComponentController/ACTION$reportDeprecationUsages aura://ComponentController/ACTION$reportFailedAction aura://ComponentController/ACTION$reportUsages aura://ConversationController/ACTION$getConversationCallStructureAndInsights aura://DynamicComponentController/ACTION$getTemplateDescriptorWithExpansionBundle aura://HostConfigController/ACTION$getConfigData aura://LabelController/ACTION$getLabel aura://LightningExperienceAssistantPlatformController/ACTION$getActiveQuestionnaires aura://LightningExperienceAssistantPlatformController/ACTION$getActiveScenarios aura://LightningExperienceAssistantPlatformController/ACTION$getAssistant aura://LightningExperienceAssistantPlatformController/ACTION$getQuestionnaire aura://LightningExperienceAssistantPlatformController/ACTION$saveAssistant aura://LightningExperienceAssistantPlatformController/ACTION$saveQuestionnaire aura://LinkedInSalesNavigatorController/ACTION$getSalesAccessToken aura://LinkedInSalesNavigatorController/ACTION$getSignupUrl aura://ListUiController/ACTION$getListInfoById aura://ListUiController/ACTION$getListInfoByName aura://ListUiController/ACTION$getListRecordsById aura://ListUiController/ACTION$getListRecordsByName aura://ListUiController/ACTION$getListUiById aura://ListUiController/ACTION$getListUiByName aura://ListUiController/ACTION$getListsByObjectName aura://LookupController/ACTION$getLookupRecords aura://ManagedContentController/ACTION$getManagedContentByTopicsAndContentKeys aura://ManagedContentController/ACTION$getPublishedManagedContentListByContentKey aura://MruListUiController/ACTION$getMruListInfo aura://MruListUiController/ACTION$getMruListRecords aura://MruListUiController/ACTION$getMruListUi aura://NavEventManagerController/ACTION$getClassicNonSetupPageReferenceMappings aura://NavEventManagerController/ACTION$getClassicSetupPageReferenceMappings aura://NavEventManagerController/ACTION$getResolvedIntegrationUrl aura://NavigationMenuController/ACTION$getCommunityNavigationMenu aura://OrchestrationController/ACTION$getOrchestrationInstance aura://OrchestrationController/ACTION$getOrchestrationInstanceCollection aura://OrchestrationController/ACTION$publishOrchestrationEvent aura://RecordMruController/ACTION$updateMru aura://RecordUiController/ACTION$createRecord aura://RecordUiController/ACTION$deleteRecord aura://RecordUiController/ACTION$executeAggregateUi aura://RecordUiController/ACTION$executeGraphQL aura://RecordUiController/ACTION$findDuplicates aura://RecordUiController/ACTION$getAggregateUi aura://RecordUiController/ACTION$getDedupeConfig aura://RecordUiController/ACTION$getDuplicateConfig aura://RecordUiController/ACTION$getFormByName aura://RecordUiController/ACTION$getLayout aura://RecordUiController/ACTION$getLayoutUserState aura://RecordUiController/ACTION$getObjectInfo aura://RecordUiController/ACTION$getObjectInfos aura://RecordUiController/ACTION$getPicklistValues aura://RecordUiController/ACTION$getPicklistValuesByRecordType aura://RecordUiController/ACTION$getRecordAvatars aura://RecordUiController/ACTION$getRecordCloneDefaults aura://RecordUiController/ACTION$getRecordCreateDefaults aura://RecordUiController/ACTION$getRecordDefaultsTemplateClone aura://RecordUiController/ACTION$getRecordDefaultsTemplateForCreate aura://RecordUiController/ACTION$getRecordUis aura://RecordUiController/ACTION$getRecordWithFields aura://RecordUiController/ACTION$getRecordWithLayouts aura://RecordUiController/ACTION$getRecordsWithFields aura://RecordUiController/ACTION$getRecordsWithLayouts aura://RecordUiController/ACTION$getValidationRulesInfo aura://RecordUiController/ACTION$postRecordAvatarAssociation aura://RecordUiController/ACTION$updateLayoutUserState aura://RecordUiController/ACTION$updateRecord aura://RelatedListUiController/ACTION$getRelatedListInfo aura://RelatedListUiController/ACTION$getRelatedListInfoBatch aura://RelatedListUiController/ACTION$getRelatedListInfoByApiName aura://RelatedListUiController/ACTION$getRelatedListInfoCollection aura://RelatedListUiController/ACTION$getRelatedListRecordCount aura://RelatedListUiController/ACTION$getRelatedListRecords aura://RelatedListUiController/ACTION$getRelatedListRecordsBatch aura://RelatedListUiController/ACTION$getRelatedListsRecordCount aura://RelatedListUiController/ACTION$updateRelatedListInfoByApiName aura://SearchGridLWCController/ACTION$updateUserColumnWidthPref aura://SeoPropertiesController/ACTION$getRecordSeoProperties aura://SitesController/ACTION$searchSite aura://StyleController/ACTION$applyTokens aura://WaveController/ACTION$deleteDataset aura://WaveController/ACTION$deleteRecipe aura://WaveController/ACTION$executeQueryByInputRep aura://WaveController/ACTION$getAnalyticsLimits aura://WaveController/ACTION$getDataflowJob aura://WaveController/ACTION$getDataflowJobNode aura://WaveController/ACTION$getDataflowJobNodes aura://WaveController/ACTION$getDataflowJobs aura://WaveController/ACTION$getDataflowJobsByDataflowId aura://WaveController/ACTION$getDataset aura://WaveController/ACTION$getDatasets aura://WaveController/ACTION$getRecipe aura://WaveController/ACTION$getRecipes aura://WaveController/ACTION$getReplicatedDatasets aura://WaveController/ACTION$getSchedule aura://WaveController/ACTION$getWaveFolders aura://WaveController/ACTION$getXmd aura://WaveController/ACTION$startDataflow aura://WaveController/ACTION$updateDataflowJob aura://WaveController/ACTION$updateSchedule serviceComponent://ui.chatter.components.aura.components.forceChatter.groups.actions.EditGroupNotificationSettingsController/ACTION$getNotificationSettings serviceComponent://ui.chatter.components.aura.components.forceChatter.groups.actions.EditGroupNotificationSettingsController/ACTION$setNotificationSettings serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$addParticipants serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$createMessage serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagesDetail serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagesListData serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMessagingPermAndPref serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getMoreReplies serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getRichTextConfig serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$getUserDetails serviceComponent://ui.chatter.components.messages.MessagesController/ACTION$removeParticipants serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableAttributeLoaderController/ACTION$getComponentAttributes serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableComponentLoaderController/ACTION$getAudienceTargetedPageComponent serviceComponent://ui.comm.runtime.components.aura.components.siteforce.controller.PubliclyCacheableComponentLoaderController/ACTION$getPageComponent serviceComponent://ui.comm.runtime.components.aura.components.siteforce.network.tracking.NetworkTrackingController/ACTION$createLogRecord serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$getBootstrapCacheExpiration serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$getTopicDescription serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$isValidSObjectId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$setCurrentApp serviceComponent://ui.comm.runtime.components.aura.components.siteforce.qb.QuarterbackController/ACTION$validateRoute serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getActionOverrides serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getArticleUrlNameAndVersionId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getArticleVersionId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCMSContentTypeAndURLName serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCMSContentTypeUrlnameAndId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getCategoryPath serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getNameFieldValue serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$getPersonAccountIdFromContactId serviceComponent://ui.comm.runtime.components.aura.components.siteforce.recordservicecomponent.RecordServiceComponentController/ACTION$isAllowViewEditConvertedLeadsOn serviceComponent://ui.comm.runtime.components.aura.components.siteforce.service.ServiceBodyController/ACTION$getTopicImageUrlFromContextId serviceComponent://ui.communities.components.aura.components.forceCommunity.baseSearch.BaseSearchController/ACTION$getCrossObjectDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getArticleDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getCombinedDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getCrossObjectDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.DeflectionDataProviderController/ACTION$getQuestionDeflection serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.LWCRecordDetailController/ACTION$getInitData serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopic serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopicFromEntityId serviceComponent://ui.communities.components.aura.components.forceCommunity.controller.OmniBoxController/ACTION$getTopicFromUrl serviceComponent://ui.communities.components.aura.components.forceCommunity.navigationMenu.NavigationMenuDataProviderController/ACTION$getNavigationMenu serviceComponent://ui.communities.components.aura.components.forceCommunity.signalCollector.SignalCollectorController/ACTION$sendSignals serviceComponent://ui.force.components.controllers.action.ActionController/ACTION$getServerSideComponent serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$findMatches serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$getConfig serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$loadObjectApiInfo serviceComponent://ui.force.components.controllers.dedupe.DedupeManagerController/ACTION$loadRecords serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$cloneRecordWithRelatedEntities serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getDetailComponent serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getEntityConfig serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getNextRecordLayout serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getPostSaveNavigationEvent serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$getRecord serviceComponent://ui.force.components.controllers.detail.DetailController/ACTION$saveSectionState serviceComponent://ui.force.components.controllers.dynamicLabel.UiDynamicLabelProviderController/ACTION$getLabel serviceComponent://ui.force.components.controllers.hostConfig.HostConfigController/ACTION$getConfigData serviceComponent://ui.force.components.controllers.inlineEdit.InlineEditController/ACTION$getNameField serviceComponent://ui.force.components.controllers.inlineEdit.InlineEditController/ACTION$getPostSaveNavigationEvent serviceComponent://ui.force.components.controllers.logoutHandler.LogoutHandlerController/ACTION$getLogoutURL serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$createQuickActionRecords serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$createRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$deleteRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$getRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveQuickActionRecords serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveRecord serviceComponent://ui.force.components.controllers.recordGlobalValueProvider.RecordGvpController/ACTION$saveRecords serviceComponent://ui.force.components.controllers.recordLayoutBroker.RecordLayoutBrokerController/ACTION$getLayout serviceComponent://ui.force.components.controllers.recordLayoutBroker.RecordLayoutBrokerController/ACTION$getRecordAndLayout serviceComponent://ui.force.impl.aura.components.force.recordEditActions.RecordEditActionsController/ACTION$getEditActions serviceComponent://ui.global.components.one.actionsManager.ActionsManagerController/ACTION$handleAction serviceComponent://ui.identity.components.sessiontimeoutwarn.SessionTimeoutWarnController/ACTION$getSessionRefreshAction serviceComponent://ui.identity.components.sessiontimeoutwarn.SessionTimeoutWarnController/ACTION$getSessionTimeoutConfig serviceComponent://ui.instrumentation.components.beacon.InstrumentationBeaconController/ACTION$getLocators serviceComponent://ui.instrumentation.components.beacon.InstrumentationBeaconController/ACTION$sendData serviceComponent://ui.search.components.forcesearch.sgdp.MRUCacheController/ACTION$getGlobalMrus serviceComponent://ui.search.components.forcesearch.sgdp.PermsAndPrefsCacheController/ACTION$getPermsAndPrefs serviceComponent://ui.search.components.forcesearch.sgdp.ResultsFiltersCacheController/ACTION$getResultsFilterMetadata serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getEntityLabels serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getEntityNames serviceComponent://ui.search.components.forcesearch.sgdp.ScopesCacheController/ACTION$getScopeMaps serviceComponent://ui.self.service.components.profileMenu.ProfileMenuController/ACTION$getContextUserPhotoUrlAndUpdatedName serviceComponent://ui.self.service.components.profileMenu.ProfileMenuController/ACTION$getProfileMenuResponse serviceComponent://ui.sfa.components.nativeimport.ImportButtonController/ACTION$getConfig
Que dois-je faire maintenant ?
Vous trouverez ci-dessous trois solutions pour poursuivre vos efforts visant à réduire les risques liés aux données dans votre entreprise:
Planifiez une démonstration avec nous pour voir Varonis en action. Nous personnaliserons la session en fonction des besoins de votre organisation en matière de sécurité des données et répondrons à vos questions.
Consultez un exemple de notre évaluation des risques liés aux données et découvrez les risques qui pourraient subsister dans votre environnement. Cette évaluation est gratuite et vous montre clairement comment procéder à une remédiation automatisée.
Suivez-nous sur LinkedIn, YouTube et X (Twitter) for pour obtenir des informations sur tous les aspects de la sécurité des données, y compris la DSPM, la détection des menaces, la sécurité de l’IA et plus encore.