Undersök avvikelser i API-begäranden
Ofta behövs ytterligare utredning av en API-begäranavvikelse för antingen att avgöra om ett dataintrång har inträffat eller för att se den som godkänd.
Versioner som krävs
| Tillgängligt i både Salesforce Classic (inte tillgängligt i alla organisationer) och Lightning Experience. |
Tillgängliga i: Enterprise, Unlimited och Developer Edition Kräver tilläggsprenumerationerna Salesforce Shield eller Salesforce Event Monitoring. |
Som en Shield-kund ger Händelseövervakning i realtid dig den information som behövs för att utföra din utredning. Närmare bestämt:
- ApiAnomalyEvent och dess lagringsmotsvarighet ApiAnomalyEventStore följer avvikelser i hur användare gör API-anrop. Dessa objekt är utgångspunkten för din utredning.
- ApiEventStream och dess lagringsmotsvarighet ApiEvent följer användarinledda skrivskyddade API-anrop. Använd dessa objekt för att se körningar av API i realtid eller historiskt.
- LoginEventStream (och dess lagringsmotsvarighet LoginEvent) följer all inloggningsaktivitet i din organisation.
Låt säga att din organisation får en ApiAnomalyEvent som indikerar en potentiell avvikelse i en användares rapportkörning. Det första du gör är att titta på relevanta fält i händelsen för att få grundläggande information om avvikelsen, till exempel:
- Poäng: Ett nummer som representerar hur mycket denna användares API-aktivitet skiljer sig från deras vanliga aktivitet. Ju högre numret är, desto mer avvek det.
- UserId: Användarens unika ID.
- EventDate: Tiden då API-begäran inträffade.
- SecurityEventData: JSON-fält som innehåller de funktioner, som radantal eller veckodag, som bidrar mest till att denna avvikelse upptäcktes.
- Sammanfattning: En textsammanfattning av händelsen.
Se API-dokumentationen för den fullständiga listan över fält.
Detta exempel på SOQL-sökfråga returnerar dessa fältvärden.
SELECT Score, UserId, EventDate, SecurityEventData, Summary
FROM ApiAnomalyEventStore
Låt oss titta närmare på fältet SecurityEventData, eftersom det innehåller de bidragande faktorer som utlöste denna upptäckt av avvikelsen. Här är några exempeldata:
[
{
"featureName": "rowCount",
"featureValue": "1937568",
"featureContribution": “95.00 %"
},
{
"featureName": "autonomousSystem",
"featureValue": "Bigleaf Networks, Inc.",
"featureContribution": “1.62 %"
},
{
"featureName": "dayOfWeek",
"featureValue": "Sunday",
"featureContribution": “1.42 %"
},
{
"featureName": "userAgent",
"featureValue": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36}",
"featureContribution": “1.21 %"
},
{
"featureName": "periodOfDay",
"featureValue": “Evening”,
"featureContribution": “.09 %"
},
{
"featureName": "averageRowSize",
"featureValue": "744",
"featureContribution": “0.08 %"
},
{
"featureName": "screenResolution",
"featureValue": "900x1440",
"featureContribution": “0.07 %"
}
]
Funktionen som bidrar mest (95.00%) till denna upptäckt var rowCount med värdet 1937568. Funktionen indikerar att användaren visade eller exporterade en rapport som hade 1 937 568 rader. Baserat på historiska data visar eller exporterar användaren sällan så mycket data. De andra funktionerna bidrar mycket mindre till poängen. Till exempel körde användaren rapporten på söndag, men denna funktion bidrar endast med 1,42% till den övergripande poängen.
Nu när du har dessa data kan du utreda ytterligare.
