An investigation guide, in applied mode, for PingOne Protect. It shows how to find one specific login event after a user signs into an onboarded app and how to trace it across PingFederate, the PingOne audit log, and CloudWatch. It then covers filtering the Threat Protection dashboard systematically by user, application, IP, country, browser, OS, and user agent, and working around its constraints, since it accepts neither wildcards nor quotes. From there you decompose a risk level into the predictors that produced it, read each predictor as a single question, and argue the innocent explanation before calling anything an attack. The guide ends with how to deliver a five-sentence plain-English explanation that closes on a recommended action, plus seven traps, six checks, a five-beat demo run of show, and cited documentation links.
Subject: Identity & Access Management · 114 slides · applied lesson
Open the interactive version of this deck · Homework for this lesson
Title
PingOne Protect · Investigation Guide
A user just signed into your application. Find that exact event, read the risk score, name the predictors that produced it, decide whether it's actually suspicious — and say it in a sentence a business person believes.
Objectives
There's one question this deck exists to make you fluent at:
"A user just logged into this application. What is their risk score, why did they get that score, and how do I explain it?"
You already know Protect labels users low, medium, or high. The whole move here is treating that label as the beginning of an investigation, not the end of one.
Warm-up
Discussion prompt
Before we open PingOne Protect - Investigating a Login, End to End: without looking back, what was the main idea of PingOne DaVinci - Orchestrating Identity Flows, and what could you do by the end of it that you could not do before?
Hint: One sentence for the idea, one for the skill. If the second one is blank, that is the part to revisit.
Answer:
A working guide, in applied mode, to PingOne DaVinci. It starts with the vocabulary of flows, nodes, connectors, connections, and capabilities, then covers building on the canvas and why the logic lives on the connecting line rather than in the node. It explains the four variable contexts with their exact {{...}} syntax, subflow input and output schemas, and deployment through applications and flow policies with versions and A/B weights. It also covers the six launch methods, among them the widget, redirect, API, and SDK, and a debugging ladder built from Validate Flow, Flow Analytics, log levels, correlation IDs, and the documented flow limits. Nine traps, six checks, a production-readiness checklist, and cited documentation links round it out.
Section
Part 1
Concept
Here's the situation. You onboarded an application. A colleague logged in. Someone asks you what Protect thought of it.
The weak answer: "It came back high risk." That's a label. It ends the conversation and it teaches the listener nothing.
The strong answer: "It came back high because the device had never been seen and the sign-on came from a country this user has never used — either an account takeover, or he's on a new laptop in Krakow this week. I'd check with him before locking anything."
Same event, same score. The difference is that the second answer treats the score as a conclusion with evidence behind it, which is the only form anyone can act on.
Counterexample
Discussion prompt
The weak answer: "It came back high risk." That's a label. It ends the conversation and it teaches the listener nothing.
That is stated as though it always holds. Do one of two things: produce a case where it fails, or say precisely what rules such a case out. "It just does" is not on the menu.
Hint: Hunt at the extremes first — zero, one, negative, empty, equal. If every extreme survives, the reason they survive is the proof.
Answer:
Same event, same score. The difference is that the second answer treats the score as a conclusion with evidence behind it, which is the only form anyone can act on.
Intuition
A smoke alarm going off does not mean your house is burning. It means something in the air matched what burning smells like.
You still walk into the kitchen. Sometimes it's a fire; often it's toast.
Protect works the same way. A HIGH means enough detectors fired to cross a threshold you configured. It is a very good reason to look — and it is not, by itself, a finding.
Investigators who skip this step burn their credibility fast: escalate three "attacks" that were all a salesperson in an airport lounge, and nobody trusts the fourth alert, which is real.
Analogy
Discussion prompt
Explain A smoke alarm, not a verdict by analogy to something with no Identity & Access Management in it at all — a queue, a recipe, a map, a bank balance, whatever fits. Then say where your analogy breaks.
Hint: An analogy that never breaks is not an analogy, it is the same idea wearing a hat. Find the seam — that is the part that is actually new.
Answer:
A smoke alarm going off does not mean your house is burning. It means something in the air matched what burning smells like.
Concept
Every Protect investigation answers the same three questions in the same order. If you can only remember one slide from this deck, make it this one.
Notice the shape: identify, decompose, interpret. Most people jump straight to question three, which is exactly why their answers don't convince anyone.
Matching
Match the pairs
From Three questions, every time — match each one to what it actually does. The descriptions have been shuffled.
Why: What happened?, Why this score?, So what? are easy to tell apart while they are sitting next to their descriptions and much harder afterwards, which is what this checks.
Anomaly
Predict first
A student writes this, and it looks reasonable:
The habit: open the dashboard, see HIGH, report "we have a high-risk user."
It is wrong. Say what breaks — and say it before you turn the page.
Correct: The first question back is "why?" and you have to go look — in front of whoever asked.
The habit: never say a level without saying the predictors underneath it.
Why: The first question back is "why?" and you have to go look — in front of whoever asked.
Trap
The habit: open the dashboard, see HIGH, report "we have a high-risk user."
You've passed along a number with no evidence attached.
Why: The first question back is "why?" and you have to go look — in front of whoever asked.
If it turns out to be a legitimate traveller, the tool takes the blame.
Why: The score was correct; the interpretation was missing. But the audience can't tell those apart.
The habit: never say a level without saying the predictors underneath it.
Report the level and the two or three signals that produced it, in the same breath.
Why: "High, because new device plus new country" is a sentence someone can immediately act on or dismiss.
Name the innocent explanation yourself, before anyone else does.
Why: Doing this proactively is what makes you the trusted analyst rather than the person who cries wolf.
Ranking
Put in order
These are the steps of The investigation loop, scrambled. Put them back in order before the next slide shows you.
Why: This is the order the recipe itself gives. Recalling the sequence without the slide in front of you is the difference between recognising the method and being able to run it — most of what goes wrong in practice is a step done out of turn.
Pattern
Six steps. The rest of this deck is one part per step.
Steps 5 and 6 are the ones nobody teaches, and they're the entire difference between operating the tool and being useful with it.
Elimination
Eliminate the wrong options
A user's sign-on returns HIGH risk. What is the correct next action?
3 of these 4 are wrong. Strike them one at a time, and say what rules each one out before you strike the next. The survivor is the answer.
Survives elimination: A
Why: A risk level is the aggregate of predictor scores crossing a threshold you configured. It tells you enough detectors fired to be worth examining — not that an attack occurred. The investigation begins by decomposing the level into its predictors and asking what else could produce those same signals.
Check
This is about analytical habit, not about a config field.
Check your understanding
A user's sign-on returns HIGH risk. What is the correct next action?
Answer: A
Why: A risk level is the aggregate of predictor scores crossing a threshold you configured. It tells you enough detectors fired to be worth examining — not that an attack occurred. The investigation begins by decomposing the level into its predictors and asking what else could produce those same signals.
Section
Part 2
Concept
Concretely: your user signed into an app fronted by PingFederate, and somewhere a risk evaluation happened. Before you can find it, you need to know which system holds which fact.
| System | Knows | Does NOT know |
|---|---|---|
| The application | That a session started | Anything about risk |
| PingFederate | The authentication, the policy, the adapter chain | The risk score, unless it asked for one |
| PingOne Protect | The risk evaluation: level, score, predictors, device, IP | What the app did afterwards |
| PingOne audit log | That an evaluation was created and updated, and when | The detailed predictor breakdown |
| CloudWatch | A copy of PingOne audit events, if a pipeline is configured | Anything PingOne didn't emit as an audit event |
The key realization: the risk score does not live in your application logs or in CloudWatch's detail. Those tell you an evaluation happened. The why lives in PingOne Protect.
Comparison
Comparison matrix
From Who knows what: refill the Knows column from what you know. The rest of the table is as it appeared.
| System | Knows | Does NOT know |
|---|---|---|
| The application | That a session started | Anything about risk |
| PingFederate | The authentication, the policy, the adapter chain | The risk score, unless it asked for one |
| PingOne Protect | The risk evaluation: level, score, predictors, device, IP | What the app did afterwards |
| PingOne audit log | That an evaluation was created and updated, and when | The detailed predictor breakdown |
| CloudWatch | A copy of PingOne audit events, if a pipeline is configured | Anything PingOne didn't emit as an audit event |
Concept
These two event types are the thread that ties everything together. Learn their names.
| Audit event | What it proves |
|---|---|
| Risk Evaluation Created | Your flow actually called Protect for this login |
| Risk Evaluation Updated | The flow reported back how the sign-on ended |
Filtering the PingOne audit log for these is the documented way to confirm a Protect integration is working at all.
They're also your diagnostic pair. No Created event means the application never called Protect — an integration problem, not a risk problem. Created with no Updated means the completion status was never sent, so the models are learning nothing from this event.
Trade off
Comparison matrix
From The two audit events: every row here is a choice with a cost. Fill the What it proves column, then say which row you would actually pick and what you give up for it.
| Audit event | What it proves |
|---|---|
| Risk Evaluation Created | Your flow actually called Protect for this login |
| Risk Evaluation Updated | The flow reported back how the sign-on ended |
Concept
The Audit page in the admin console lets you "run queries on events and actions in the PingOne environment." It splits into two categories with very different lifespans.
| Category | Covers | Retention |
|---|---|---|
| User events | User creation and deletion, authentications, record updates, end-user activity | 90 days |
| Configuration events | Changes to system settings, policies, applications, integrations | 2 years |
Ninety days is the number to internalize. An investigation into something from last quarter may be past the window — which is exactly why organizations stream the data out.
For longer retention, PingOne supports webhooks to stream the data to your own repository with your own retention policy.
Explain it
Discussion prompt
Explain The PingOne audit page and its retention to a student a year behind you. No notation, no jargon they have not met — and it still has to be true.
Hint: If your explanation needs a symbol they have never seen, you are describing the notation rather than the idea.
Answer:
The Audit page in the admin console lets you "run queries on events and actions in the PingOne environment." It splits into two categories with very different lifespans.
Concept
If your organization uses AWS, PingOne audit data can land in CloudWatch Logs — and knowing how changes where you search first.
The CloudWatch pipeline uses the PingOne Audit Logs API to retrieve authentication events, user activities, policy decisions, and administrative changes.
Authentication is OAuth2 using a Worker application — the same kind you built for API access.
Why: Note the Client ID and Environment ID; the Client Secret comes from the Configuration tab.
Store the credentials in AWS Secrets Manager under the keys client_id and client_secret.
Why: The pipeline reads them from there rather than holding them in its own configuration.
Assign the worker app the Environment Admin and Application Owner roles.
Why: A pipeline that authenticates but returns nothing is almost always a missing role rather than a bad secret.
Configure the pipeline with your Environment ID, your Region (NA, EU, AP, AU, CA, SG), and a range duration.
Why: Range uses a duration format such as PT21H for the last 21 hours; the maximum is 90 days, mirroring PingOne's own retention.
Verify audit data is arriving in the selected CloudWatch Logs log group before relying on it in an investigation.
Why: An empty log group during an incident is the worst possible time to discover the pipeline was never activated.
Concept
The integration maps PingOne events onto the Open Cybersecurity Schema Framework (OCSF), version 1.5.0, in three classes:
| OCSF class | Number | Example PingOne events |
|---|---|---|
| Authentication | 3002 | AUTHENTICATION.CREATED, SESSION.CREATED, PASSWORD.CHECK_SUCCEEDED, PASSWORD.CHECK_FAILED |
| Account Change | 3001 | USER.CREATED, USER.LOCKED, PASSWORD.RESET, USER.DELETED |
| Entity Management | 3004 | APPLICATION.UPDATED, RISK_POLICY_SET.UPDATED, POLICY.CREATED |
Two things worth noticing for an investigation. RISK_POLICY_SET.UPDATED is in there — so CloudWatch can tell you someone changed the risk policy, which is often the real explanation for "scores changed last Tuesday."
And AUTHENTICATION.CREATED plus PASSWORD.CHECK_FAILED give you the attempt pattern around a login, which is context Protect's own dashboard won't show you.
Trap
The assumption: logs are logs, so the score must be in the log stream somewhere.
You grep the CloudWatch log group for the user and find authentication events.
Why: They confirm a sign-on happened, but carry no predictor breakdown and no risk detail.
You conclude the integration is broken and start re-checking the PingFederate configuration.
Why: Nothing was broken. You were reading the wrong system for the question you asked.
The model: use each system for what it uniquely knows.
Use CloudWatch or the audit log to establish that an evaluation happened, and exactly when.
Why: This gives you a precise timestamp and the surrounding attempt pattern — the two things that make the next step fast.
Then go to PingOne Protect for the level, the score, and the predictors.
Why: The 'why' only exists there. Logs answer whether and when; Protect answers why.
Ranking
Put in order
Put the moves of Following one login through the chain into the order they have to happen.
Why: These are the moves of the worked example in the order it makes them, and each one is set up by the one before it. A user's own account of when and where is evidence, and it is the cheapest evidence available.
Worked example
The end-to-end trace, using nothing but a username and "sometime this morning."
Start at the application: confirm the user believes they signed in, and get the rough time.
Why: A user's own account of when and where is evidence, and it is the cheapest evidence available.
Move to PingFederate: confirm the authentication event and the policy path taken.
Why: This tells you whether the risk step was even in the path — if PingFederate never invoked it, there is no evaluation to find.
Check the PingOne audit log for a Risk Evaluation Created event for that user near that time.
Why: This is the moment the vague 'this morning' becomes a precise timestamp you can filter on.
Note the exact timestamp, the IP address, and the target application from that event.
Why: These three are your join keys into the Protect dashboard — far more reliable than scrolling by eye.
Open Monitoring > Threat Protection and filter to that user, application, and time.
Why: Now you're looking at one row instead of a population.
Open the event and read the level, score, and contributing predictors.
Why: This is where the investigation actually starts; everything before it was navigation.
Verify you have the right event by matching the IP address against the audit entry.
Why: If a user signed in three times this morning, the IP is what tells you which one you're looking at.
Reverse engineer
Discussion prompt
Work backwards. The example finished here:
Verify you have the right event by matching the IP address against the audit entry.
What was it asked to do, and what must it have been given? Reconstruct the problem from its answer.
Hint: Every quantity in the result had to enter somewhere. Account for each one.
Answer:
The end-to-end trace, using nothing but a username and "sometime this morning."
Concept
The more systems in the path, the more you want a single identifier that appears in all of them.
If DaVinci is orchestrating the flow, its documented identifiers do exactly this:
| Identifier | Traces |
|---|---|
| correlationId | One HTTP request within PingOne microservices |
| transactionId | A complete flow execution across all services |
| externalTransactionId | The bridge between PingOne and external systems such as PingFederate |
| sessionId / externalSessionId | A user's session across executions |
externalTransactionId is the one that matters here — it is specifically the bridge to PingFederate, which is the join you're usually trying to make.
If DaVinci is not in your path, fall back to the universal four: username, timestamp, IP address, and target application. Those are also exactly what the Protect dashboard filters on, which is not a coincidence.
Pattern
Where you start depends on what you were handed. All four routes converge on the same event.
| You were given | Start at | Then |
|---|---|---|
| A username and a rough time | PingOne audit log | Get exact timestamp and IP, then filter the dashboard |
| A CloudWatch alert | The log event | Extract user and time, then the audit log, then the dashboard |
| "Something looked odd in the dashboard" | Threat Protection dashboard | Filter down, then back-fill context from the audit log |
| A user complaint about being challenged | The user's own account of when and where | Audit log for the exact evaluation, then the dashboard |
The last row is the most common in real life and the one people handle worst — a user saying "it made me do MFA yesterday" is a complete investigation request, and it starts with asking them where they were.
Prediction
Predict first
You find the user's authentication event in CloudWatch but no risk information anywhere in the log stream. What does this most likely mean?
Answer it in your own words, now, with nothing to choose from. The options are on the next slide — and picking the right one off a list is an easier skill than producing it.
Correct: Nothing is wrong — audit events confirm an evaluation occurred, but the predictor breakdown only exists in PingOne Protect
Why: The CloudWatch pipeline retrieves PingOne audit events — authentication events, user activities, policy decisions, administrative changes. Those establish that an evaluation happened and when. The detailed risk analysis, including which predictors fired and their contribution, lives in PingOne Protect and is read through the Threat Protection dashboard.
Check
This tests whether you know which system holds which fact.
Check your understanding
You find the user's authentication event in CloudWatch but no risk information anywhere in the log stream. What does this most likely mean?
Answer: A
Why: The CloudWatch pipeline retrieves PingOne audit events — authentication events, user activities, policy decisions, administrative changes. Those establish that an evaluation happened and when. The detailed risk analysis, including which predictors fired and their contribution, lives in PingOne Protect and is read through the Threat Protection dashboard.
Section
Part 3
Concept
Before you open the dashboard, collect these. Every minute spent here saves five minutes of scrolling.
If you're missing the IP, the audit log will give it to you. If you're missing the time, the user will. If you're missing the application, ask which link they clicked.
Investigations fail at this step far more often than at any analytical step. People open the dashboard with only a name and then browse, which does not scale past a handful of users.
Step zero
Discussion prompt
Finding it in the dashboard — before any calculation: what is the plan? Name the moves in order, in plain English, without doing the arithmetic.
Hint: It starts with: Go to Monitoring > Threat Protection in the PingOne admin console.
Answer:
Worked example
You have a username, an application, and a time. Here's the sequence.
Go to Monitoring > Threat Protection in the PingOne admin console.
Why: This is the Threat Protection dashboard — the home for everything in this deck.
Set the time range using the slider under the Risk summary chart.
Why: It switches between the current day, past week, past month, or past six months. Pick the narrowest range that certainly contains your event.
In the search bar above the risk data table, filter by User.
Why: User is the most selective field; leading with it collapses the population immediately.
Add Target Application to separate this login from the user's activity in other apps.
Why: A user who works in five applications generates five streams of events; the app filter is what isolates the one you care about.
Add IP if the user signed in more than once in the window.
Why: This is the disambiguator. Without it, you are guessing between rows that look identical in the summary.
Open the matching row to see the risk level and the contributing detail.
Why: Confirm the timestamp matches your audit entry before drawing any conclusion from it.
Verify you have exactly one candidate event, not several.
Why: If two rows still match, you have not filtered enough — and analyzing the wrong one is worse than analyzing none.
Blank canvas
Draw it
Draw what Finding it in the dashboard just did — the shape of it, not the line-by-line working. One picture, labels only where you need them. Then check it against the steps: anything you could not draw is a step you followed rather than understood.
Anomaly
Predict first
A student writes this, and it looks reasonable:
The approach: set the range to today and scroll for something that looks like your event.
It is wrong. Say what breaks — and say it before you turn the page.
Correct: You are now eyeballing a list, which is neither repeatable nor defensible when someone asks how you found it.
The approach: filter by identity first, time second.
Why: You are now eyeballing a list, which is neither repeatable nor defensible when someone asks how you found it.
Trap
The approach: set the range to today and scroll for something that looks like your event.
A busy environment produces thousands of evaluations a day.
Why: You are now eyeballing a list, which is neither repeatable nor defensible when someone asks how you found it.
You pick a row that looks right and analyze it.
Why: If it's the wrong user's event, every conclusion that follows is confidently wrong.
The approach: filter by identity first, time second.
Lead with User, then Target Application, then narrow the time range.
Why: Identity is far more selective than time, so applying it first shrinks the problem fastest.
Use IP as the tie-breaker when several events remain.
Why: Two logins by the same user into the same app on the same day are distinguished by where they came from.
Section
Part 4
Concept
Above each risk data table sits a search bar with filter checkboxes. These seven are your whole toolkit — know what each is good for.
| Filter | Best used to |
|---|---|
| User | Isolate one identity — your most selective filter |
| Target Application | Separate this app's logins from the user's other activity |
| IP | Disambiguate multiple logins, or pivot to everyone from one address |
| Country | Test a geography hypothesis across many users |
| User Agent | Find automation and unusual client software |
| OS | Confirm or refute a 'new device' story |
| Browser | Same — and useful for spotting headless or odd clients |
The pivot move: once you have a suspicious IP from one user's event, clear the user filter and search that IP alone. If twenty accounts share it, you've found something much bigger than one login.
Concept
The search bar has documented behavior that surprises people used to normal search boxes.
dana* and expect matches.So when a filter returns nothing, the cause is very often the query, not the data. Check for a stray space before concluding the event doesn't exist.
Practically: paste exact values rather than typing them, and take those values from the audit log entry rather than from memory or from an email.
Concept
The filters are not independent checkboxes evaluated together — order matters.
Left-hand filters apply first, creating cascading subsets. Each filter narrows what the next one sees.
The practical consequence is that you should apply filters most-selective first: User, then Target Application, then IP, then the descriptive fields.
Doing it backwards — starting with Country, say — technically reaches the same answer but makes each intermediate view enormous and slow to read.
Estimation
Predict first
A concrete run. The report is: "Someone from marketing got challenged yesterday and doesn't know why."
Commit before you compute: what does The narrowing funnel come out to? A rough magnitude and the right form is enough — the point is to have something concrete to be wrong about.
Correct: Verify the conclusion by re-applying the original User filter and confirming the story still fits.
Why: A prediction you can defend turns the computation into a check rather than a leap of faith — and an answer that contradicts it is caught on the spot. Pivoting out and back is how you avoid building a theory on a coincidence.
Worked example
A concrete run. The report is: "Someone from marketing got challenged yesterday and doesn't know why."
Set the range slider to the past week, not six months.
Why: Wide enough to certainly contain yesterday, narrow enough that the tables are readable.
Filter User to the exact username, pasted from the audit entry.
Why: Remember: no wildcards, and a stray space returns nothing. Paste, don't type.
Add Target Application for the app they were trying to reach.
Why: Now you have that person's logins into that one app for a week — usually under ten rows.
Scan for the row whose risk level is not LOW.
Why: The challenge they experienced corresponds to a medium or high evaluation; the low ones passed silently and aren't what they're asking about.
Add IP from that row and clear the User filter.
Why: This is the pivot: you're now asking 'who else came from here?' rather than 'what did this person do?'
If other users appear on that IP, add Country and User Agent to characterize the group.
Why: A shared corporate egress looks completely different from a group of accounts sharing a hosting provider's address.
Verify the conclusion by re-applying the original User filter and confirming the story still fits.
Why: Pivoting out and back is how you avoid building a theory on a coincidence.
Anomaly
Predict first
A student writes this, and it looks reasonable:
The symptom: you filter by username and get zero results, though you know the user signed in.
It is wrong. Say what breaks — and say it before you turn the page.
Correct: You start re-checking PingFederate and the risk policy — an hour of work aimed at the wrong thing.
The reflex: suspect the query before you suspect the system.
Why: You start re-checking PingFederate and the risk policy — an hour of work aimed at the wrong thing.
Trap
The symptom: you filter by username and get zero results, though you know the user signed in.
You conclude the dashboard is broken or the integration failed.
Why: You start re-checking PingFederate and the risk policy — an hour of work aimed at the wrong thing.
The actual cause was a trailing space from copying out of a chat message.
Why: Spaces are significant, so the query never matched anything.
The reflex: suspect the query before you suspect the system.
Re-paste the value cleanly, and check for leading or trailing whitespace.
Why: This costs five seconds and resolves the majority of empty-result cases.
Widen the time range one step and drop all but the User filter.
Why: If the user appears with a wide, simple query, the problem was your narrowing — not the data.
Break the constraint
Discussion prompt
The rule this trap just fixed:
If the user appears with a wide, simple query, the problem was your narrowing — not the data.
Now break it on purpose. Build a case that violates it and follow the consequences until something visibly fails. Where does the failure first show up — and would you have noticed it if you had not been looking?
Hint: The dangerous rules are the ones whose violation still produces an answer. If yours fails loudly, try to find one that fails quietly.
Answer:
You start re-checking PingFederate and the risk policy — an hour of work aimed at the wrong thing.
Pattern
The order that works, every time.
Steps 1-4 find the event. Steps 5-6 turn one event into an understanding of the pattern around it — which is what separates an answer from an investigation.
Check
This one is about the documented behavior of the search bar.
Check your understanding
You filter the risk data table by a username you copied from a chat message, and get zero results despite knowing the user signed in yesterday. What should you check first?
Answer: A
Why: The dashboard's search has three documented constraints: no wildcard support, spaces are significant characters, and quotation marks are not supported. A value copied from chat very commonly carries a trailing space, which makes the query match nothing. Checking this costs seconds and explains most empty-result cases.
Section
Part 5
Concept
People use these interchangeably and then confuse each other. They're distinct, and the distinction is the basis of every good explanation.
| Field | What it is | Where it comes from |
|---|---|---|
| Risk score | A number — the sum of the scores of every predictor that returned medium or high | The risk policy's per-predictor scores |
| Risk level | LOW, MEDIUM, or HIGH | The score compared against your configured thresholds |
| Recommended action | A machine-readable instruction such as APPROVE, MFA, DENY, BOT_MITIGATION | Mitigation rules in the policy |
So a level is derived, not measured. Two organizations with identical predictor results can produce different levels, because they chose different thresholds.
That's the sentence that makes a technical audience trust you: "HIGH means it crossed the threshold we set, and here's what we set it to."
Intuition
Strip away the branding and a Protect verdict is arithmetic you could do on paper.
Each predictor that fires contributes the number you assigned it in the policy. Add them up. Compare to two thresholds. That's the entire mechanism.
Which means every HIGH can be written as a sum — and writing it out is the single most persuasive thing you can do in a demo or an investigation.
It also means a HIGH is not more certain than a MEDIUM. It's just a bigger sum. Certainty isn't what the number measures.
Step zero
Discussion prompt
Decomposing a HIGH — before any calculation: what is the plan? Name the moves in order, in plain English, without doing the arithmetic.
Hint: It starts with: Open the event and list every predictor that returned **medium or…
Answer:
Worked example
An event comes back HIGH. Here's how you turn that into an explanation with arithmetic behind it.
Open the event and list every predictor that returned medium or high.
Why: Predictors returning low contributed nothing to the total; they are not part of the story.
For each, look up the score the risk policy assigns it.
Why: The scores live in the policy, not on the event — which is why an investigator needs read access to the policy too.
Add them. For example: New Device 50 plus Geovelocity Anomaly 50 gives 100.
Why: Writing the sum out loud is what converts 'the system says high' into 'here is why, and I can show my work'.
Compare the total against the configured High and Medium thresholds.
Why: With a High threshold of 80, a total of 100 clears it — and now you can say exactly by how much.
Check whether an override produced the level instead of the arithmetic.
Why: Overrides assign a final level regardless of the calculated score, so a HIGH that doesn't match your sum is usually an override rule firing.
Verify by re-reading the level alongside your arithmetic; they should agree or an override should explain the gap.
Why: A mismatch you cannot explain means you are looking at a different policy than you think — worth resolving before you report anything.
Concept
For one predictor in particular, Protect will show you its reasoning directly.
When a User Based Risk Behavior score is Medium or High, click the score to open the Risk Details window.
| Column | Shows |
|---|---|
| Attribute | The transaction category being compared |
| Normal | The typical value for this user |
| Anomaly | The anomalous value on this event |
| Score | The risk level for that attribute |
This is the most quotable screen in the product for an investigation, because it's an explicit normal versus observed comparison — exactly the shape of a good explanation.
Access requires the dir:read:user permission. If you can see risk data but this window won't open, that's a permissions gap, not a bug.
Concept
Zoom out from the single event. The dashboard's expandable graphs answer questions about the population.
| Graph | Investigation question it answers |
|---|---|
| High risk models | Which predictors are actually driving our high-risk verdicts? |
| Risk heat map | Where is risk geographically concentrated? |
| Top 20 high risk users | Who should I look at first? |
| Risky IP | Which sources are repeat offenders? |
| Browser / OS distribution | What does our normal client population look like? |
| Risk events | How is risk trending over time? |
High risk models deserves special attention. If one predictor produces 90% of your HIGH verdicts, that's either your most valuable detector or your biggest false-positive source — and you cannot tell which without investigating a sample of them.
Browser / OS distribution is the underrated one: it defines normal for your population, which is what makes 'unusual browser properties' meaningful rather than arbitrary.
Trap
The claim: "This login scored 100, which is very high."
The listener has no idea what 100 means.
Why: Without the thresholds, a score is a number on an unlabelled scale — it could be near the floor or off the top.
Someone asks what the maximum is and you don't know.
Why: The credibility of the whole analysis rests on a number you can't contextualize.
The claim: "It scored 100 against a High threshold of 80, out of a possible 150."
State the score, the threshold it crossed, and the ceiling.
Why: Now the listener can judge severity themselves, which is what makes them trust the rest of your account.
Add which predictors contributed which points.
Why: The arithmetic is checkable, and checkable claims are the ones people act on.
Commit first
Predict first
Two companies see identical predictor results for the same login, but one reports MEDIUM and the other HIGH. What explains this?
Commit to an answer, then rate it — certain, fairly sure, or guessing — and write the rating down before you turn the page.
Correct: They configured different predictor scores or different thresholds in their risk policies
Why: A risk level is derived, not measured. The policy assigns a numerical score to each predictor that returns medium or high, sums them, and compares the total against configured High and Medium thresholds. Identical predictor results therefore produce different levels whenever the scores or thresholds differ — which is exactly why you should quote thresholds alongside any level.
The rating matters as much as the answer: confident-and-wrong is the combination that survives revision, because nothing about it feels like it needs revisiting.
Check
Careful: this distinguishes the mechanism from the interpretation.
Check your understanding
Two companies see identical predictor results for the same login, but one reports MEDIUM and the other HIGH. What explains this?
Answer: A
Why: A risk level is derived, not measured. The policy assigns a numerical score to each predictor that returns medium or high, sums them, and compares the total against configured High and Medium thresholds. Identical predictor results therefore produce different levels whenever the scores or thresholds differ — which is exactly why you should quote thresholds alongside any level.
Section
Part 6
Concept
The mental shift that makes predictors easy: stop thinking of them as scores, and start reading each one as a single question about this login.
| Predictor | The question it asks |
|---|---|
| New Device | Have we ever seen this device for this user before? |
| Anonymous Network | Is this connection hiding where it comes from? |
| User Location Anomaly | Is this far from where this user normally signs on? |
| Geovelocity Anomaly | Could a human physically travel between these two sign-ons in this time? |
| IP Reputation | Has this address been involved in malicious activity? |
| IP Velocity | Is this one user appearing from suspiciously many addresses? |
| User Velocity | Are suspiciously many users appearing from this one address? |
| Suspicious Device | Does this device look emulated, tampered with, or mirrored? |
| Traffic Anomaly | Does this volume look like brute force rather than a person? |
Read down that column and you'll notice something useful: no single question proves anything. Each is a reason to look closer, which is precisely why they're summed rather than treated individually.
Concept
Predictors split into two families, and knowing which you're reading changes how much weight to give it.
| Family | Predictors | Behaves |
|---|---|---|
| Rule-based | Anonymous Network, IP Reputation, Geovelocity, New Device | Deterministic — same input, same answer, from day one |
| Learned | User-Based Risk Behavior, IP Velocity, User Velocity | Comparative — needs history before it means anything |
Learned predictors need a training period: 1-3 weeks for workforce populations, 2-4 weeks for customers.
Investigation consequence: in a young environment, a learned predictor scoring low is not evidence of safety — it may simply have no baseline. Say "no signal" rather than "no risk" when you know the model is young.
Comparison
Comparison matrix
From Rule-based versus learned: refill the Behaves column from what you know. The rest of the table is as it appeared.
| Family | Predictors | Behaves |
|---|---|---|
| Rule-based | Anonymous Network, IP Reputation, Geovelocity, New Device | Deterministic — same input, same answer, from day one |
| Learned | User-Based Risk Behavior, IP Velocity, User Velocity | Comparative — needs history before it means anything |
Concept
Knowing a detector's blind spots is what stops you over-claiming — and someone in the room will test you on this.
Every one of these is a legitimate explanation waiting to happen — which is the entire subject of the next part.
Ranking
Put in order
Put the moves of Reading a multi-predictor story into the order they have to happen.
Why: These are the moves of the worked example in the order it makes them, and each one is set up by the one before it. Write them down before interpreting.
Worked example
An event fires three predictors. Here's how to turn a list into a narrative.
List what fired: New Device, User Location Anomaly, and Anonymous Network.
Why: Write them down before interpreting. Interpreting while you read is how you anchor on the first signal.
Translate each into its question: unknown device, unusual place, connection hiding its origin.
Why: Plain language at this stage, because it's what you'll eventually say out loud.
Look for coherence — do these signals tell one story or three unrelated ones?
Why: New device plus new location plus concealment is a single coherent story; that coherence is the actual finding, not any one signal.
Name the story: this pattern is consistent with account takeover.
Why: Naming it makes it testable, which is what lets someone else agree or disagree with you.
Now deliberately construct the innocent version before you commit.
Why: A travelling employee on a new work laptop using the company VPN produces all three signals — and that is genuinely common.
Identify the one fact that would settle it — did the user actually travel?
Why: Good investigations end by naming the cheapest question that resolves the ambiguity, not by asserting a conclusion.
Verify by checking that fact before escalating.
Why: One message to the user is cheaper than one wrongful account lock, and vastly cheaper than a missed takeover.
Section
Part 7
Intuition
Doctors have a habit worth stealing. Presented with symptoms, they don't name the first matching disease — they list every condition that fits, then find the cheapest test that eliminates most of them.
Anomaly detection needs exactly this discipline, because every predictor has an innocent cause that fires it just as reliably as a malicious one.
The question to build into your reflexes: "What else could explain this?"
Asking it costs thirty seconds and is the difference between an analyst people trust and one whose alerts get filtered into a folder nobody reads.
Concept
Memorize this table. It is the most practically useful thing in this deck.
| Signal | Suspicious reading | Innocent reading |
|---|---|---|
| New device | Attacker on their own machine | New laptop, private window, cleared cookies, reinstalled browser |
| New country | Account takeover abroad | Travel, a vendor, an offshore team, a relocated employee |
| Anonymous network | Attacker hiding origin | Corporate VPN, privacy-conscious user, hotel or airport network |
| Geovelocity anomaly | Two people using one account | VPN exit relocating the apparent origin; mobile roaming |
| IP reputation hit | Known-bad infrastructure | Shared or recycled address from a consumer ISP |
| Unusual browser properties | Automation or tooling | A developer, an accessibility tool, a hardened privacy browser |
| Traffic anomaly | Brute force or credential stuffing | Load testing, a synthetic monitor, a misconfigured retry loop |
| User velocity on one IP | Credential stuffing from one host | A corporate NAT gateway or a shared campus network |
Neither column is the default. The investigation is deciding which one this event belongs in — and often the honest answer is "can't tell yet, here's what would settle it."
Step zero
Discussion prompt
The Poland login — before any calculation: what is the plan? Name the moves in order, in plain English, without doing the arithmetic.
Hint: It starts with: State both hypotheses explicitly before gathering anything.
Answer:
Worked example
The classic case. A HIGH-risk sign-on from Poland for a user who normally signs on from Ohio. Work it properly.
State both hypotheses explicitly before gathering anything.
Why: Account takeover, or a legitimate user in Poland. Writing both down prevents anchoring on the exciting one.
Check the device: is it also new, or a device this user has used for months?
Why: A known device in a new country is a travelling employee. A new device in a new country is a much harder story to explain innocently.
Check Geovelocity: was there an Ohio sign-on a few hours earlier?
Why: Impossible travel makes the takeover reading much stronger, because a person cannot be in both places.
Pivot on the IP: is anyone else in your tenant using it?
Why: A hosting-provider address shared across several accounts reads very differently from a Polish consumer ISP.
Check the user's own pattern: has this account signed on abroad before?
Why: A user with a history of international sign-ons has a much lower base rate of surprise.
Ask the cheapest settling question: contact the user.
Why: 'Are you in Poland this week?' resolves the entire investigation for the price of one message.
Verify before acting: confirm the answer independently if the account is high-value.
Why: An attacker with mailbox access can also answer your email — for sensitive accounts, use a channel the attacker doesn't control.
Anomaly
Predict first
A student writes this, and it looks reasonable:
The setup: you're demoing, you want a dramatic moment, and the event scored HIGH.
It is wrong. Say what breaks — and say it before you turn the page.
Correct: New device 'means' the attacker's machine; the VPN 'means' they're hiding — each stated as fact rather than as one reading.
The setup: you name both readings for every signal, then explain how you'd choose.
Why: New device 'means' the attacker's machine; the VPN 'means' they're hiding — each stated as fact rather than as one reading.
Trap
The setup: you're demoing, you want a dramatic moment, and the event scored HIGH.
You narrate every signal as evidence of attack.
Why: New device 'means' the attacker's machine; the VPN 'means' they're hiding — each stated as fact rather than as one reading.
Someone in the audience says 'that's just our sales team on the VPN.'
Why: You have no answer, and the whole demo now looks like a tool that cries wolf.
The setup: you name both readings for every signal, then explain how you'd choose.
Say 'new device — either an attacker's machine, or he just got a new laptop.'
Why: Pre-empting the objection makes you the credible one in the room instead of the one being corrected.
Then show the fact that tips it: the impossible travel, or the shared hosting IP.
Why: The drama is stronger, not weaker, because the audience watched you rule things out rather than assert them.
Ranking
Put in order
These are the steps of The challenge checklist, scrambled. Put them back in order before the next slide shows you.
Why: This is the order the recipe itself gives. Recalling the sequence without the slide in front of you is the difference between recognising the method and being able to run it — most of what goes wrong in practice is a step done out of turn.
Pattern
Run this before you call anything an attack. Five questions, about a minute.
If you can't answer question 5, you don't have a finding yet — you have a lead. Saying so plainly is a strength, not a weakness.
Edge cases
Discussion prompt
The challenge checklist works on the cases you have just seen. Push it to the edge: what is the most degenerate input it still handles — empty, zero, one item, everything equal — and what is the first case where it stops being true? Name the case, not just "it breaks".
Hint: Try the smallest legal input, then the largest, then the one where two things collide. Methods are specified at their edges; the middle takes care of itself.
Answer:
Run this before you call anything an attack. Five questions, about a minute.
Prediction
Predict first
A HIGH-risk event shows New Device and User Location Anomaly for a user who normally signs on from one office. What is the strongest next step?
Answer it in your own words, now, with nothing to choose from. The options are on the next slide — and picking the right one off a list is an easier skill than producing it.
Correct: Check whether the same user had a recent sign-on elsewhere, since impossible travel would make the innocent explanation much harder
Why: New device plus new location is equally consistent with account takeover and with an employee travelling with a new laptop. Geovelocity is the discriminator: if the same account signed on somewhere far away shortly before, no single person could have made both, which is close to physical proof. Look for the fact that separates the hypotheses rather than assuming one.
Check
There's a correct analytical move here, not just a correct fact.
Check your understanding
A HIGH-risk event shows New Device and User Location Anomaly for a user who normally signs on from one office. What is the strongest next step?
Answer: A
Why: New device plus new location is equally consistent with account takeover and with an employee travelling with a new laptop. Geovelocity is the discriminator: if the same account signed on somewhere far away shortly before, no single person could have made both, which is close to physical proof. Look for the fact that separates the hypotheses rather than assuming one.
Section
Part 8
Concept
Nobody outside your team knows what 'geovelocity anomaly' means, and using the term unexplained makes the analysis sound evasive.
| Predictor | What you actually say |
|---|---|
| New Device | "We've never seen this computer used by this account before." |
| User Location Anomaly | "This sign-on came from much further away than this person usually works." |
| Geovelocity Anomaly | "They signed on in two places too far apart to travel between in that time." |
| Anonymous Network | "The connection came through something that hides where it's really from." |
| IP Reputation | "This internet address has been reported for malicious activity before." |
| IP Velocity | "This one account appeared from an unusual number of different addresses." |
| User Velocity | "An unusual number of different accounts came from this one address." |
| Traffic Anomaly | "The pattern of attempts looks automated rather than human." |
Say the plain sentence first, then name the predictor. "We've never seen this computer before — that's the New Device predictor" teaches the vocabulary without hiding behind it.
Concept
Individual signals are weak. Combinations are where meaning appears — and these four patterns cover most of what you'll see.
| Combination | Suggests | But check |
|---|---|---|
| New device + new location | Account takeover | Did they travel with a new laptop? |
| Anonymous network + many IPs | Deliberate evasion | Is it a corporate VPN with rotating exits? |
| Unusual browser properties | Automated tooling | Is it a developer or a privacy browser? |
| Repeated attempts + traffic anomaly | Probing or credential stuffing | Is it a load test or a broken retry loop? |
The 'but check' column is what makes you credible. Presenting the middle column alone is guessing; presenting both is analysis.
Trade off
Comparison matrix
From Combinations tell the story: every row here is a choice with a cost. Fill the But check column, then say which row you would actually pick and what you give up for it.
| Combination | Suggests | But check |
|---|---|---|
| New device + new location | Account takeover | Did they travel with a new laptop? |
| Anonymous network + many IPs | Deliberate evasion | Is it a corporate VPN with rotating exits? |
| Unusual browser properties | Automated tooling | Is it a developer or a privacy browser? |
| Repeated attempts + traffic anomaly | Probing or credential stuffing | Is it a load test or a broken retry loop? |
Hypothesis
Predict first
Writing the one-paragraph explanation is about to be worked. State your hypothesis first: which rule or definition decides this one, and what is the first move it forces? Then watch whether the example agrees with you.
Correct: Sentence 1 — the event. Who signed into what, when, and from where.
Why: Ground the listener in a concrete occurrence before introducing any judgment.
A hypothesis you wrote down is falsifiable; a vague sense of how it will go is not. If the example opens somewhere else, that gap is the thing worth chasing.
Worked example
The deliverable at the end of every investigation. Five sentences, in this order.
Sentence 1 — the event. Who signed into what, when, and from where.
Why: Ground the listener in a concrete occurrence before introducing any judgment.
Sentence 2 — the verdict. The level, the score, and the threshold it crossed.
Why: Quoting the threshold alongside the score is what stops the number being meaningless.
Sentence 3 — the evidence. Which predictors fired, in plain English.
Why: This is the 'why', and it's the sentence most people skip entirely.
Sentence 4 — the alternative. The innocent explanation, stated fairly.
Why: Saying it yourself is what makes the audience trust sentence 5.
Sentence 5 — the recommendation. What you'd do next, and what would change your mind.
Why: An investigation without a recommended action is trivia.
Verify by reading it to someone non-technical and asking what they'd do.
Why: If they can't tell you the next step, the paragraph hasn't done its job yet.
Step zero
Discussion prompt
A worked explanation — before any calculation: what is the plan? Name the moves in order, in plain English, without doing the arithmetic.
Hint: It starts with: "On Tuesday at 09:14, Dana signed into the customer portal from an…
Answer:
Worked example
The five sentences, filled in, for the Poland event. This is the shape to imitate.
"On Tuesday at 09:14, Dana signed into the customer portal from an address in Poland."
Why: Concrete: person, time, application, place. No jargon yet.
"Protect scored it 100 against our High threshold of 80, so it came back HIGH."
Why: Score, threshold, level — all three, so severity is judgeable.
"Two things fired: we'd never seen that computer on her account, and she normally signs on from Ohio."
Why: Plain English first. Predictor names can follow if the audience wants them.
"That's consistent with account takeover — but it's equally consistent with her travelling with a new work laptop."
Why: Both readings, stated fairly. This is the sentence that earns trust.
"There was no Ohio sign-on that morning, so travel is plausible. I've messaged her to confirm; if she says no, I'd reset credentials and revoke sessions."
Why: A recommendation with an explicit trigger — the listener knows what happens next and on what condition.
Verify the paragraph contains no unexplained jargon before you send it.
Why: If a term appears without its plain-English gloss, replace it. The audience should never have to look anything up.
Blank canvas
Draw it
Draw what A worked explanation just did — the shape of it, not the line-by-line working. One picture, labels only where you need them. Then check it against the steps: anything you could not draw is a step you followed rather than understood.
Anomaly
Predict first
A student writes this, and it looks reasonable:
The report: "Geovelocity anomaly and new device predictors triggered, aggregating to a high risk classification."
It is wrong. Say what breaks — and say it before you turn the page.
Correct: The sentence describes the tool's internals rather than the event, so a business reader learns nothing actionable.
The report: "Dana signed on from Poland on a computer we've never seen, four hours after signing on from Ohio."
Why: The sentence describes the tool's internals rather than the event, so a business reader learns nothing actionable.
Trap
The report: "Geovelocity anomaly and new device predictors triggered, aggregating to a high risk classification."
Everyone technical nods; nobody else knows what happened.
Why: The sentence describes the tool's internals rather than the event, so a business reader learns nothing actionable.
The recommendation gets ignored because the finding was never understood.
Why: Accurate analysis that nobody acts on has the same value as no analysis.
The report: "Dana signed on from Poland on a computer we've never seen, four hours after signing on from Ohio."
Describe the event in the world, then attach the predictor names.
Why: The listener already understands the finding by the time any terminology appears.
Close with what should happen and what would change your mind.
Why: This turns the report into a decision, which is the only reason anyone asked you.
Two truths and a lie
Sort into buckets
Some of these hold up and some are the exact mistakes this lesson is built to prevent. Sort them.
Pattern
Fill this in and you have a finished investigation. Keep it in a note and use it every time.
| Slot | Your sentence |
|---|---|
| The event (who / what / when / where) | |
| The verdict (score / threshold / level) | |
| The evidence (predictors, in plain English) | |
| The alternative (innocent explanation) | |
| The recommendation (action + what would change it) |
The discipline of filling every row is what prevents the two failure modes: a score with no story, and a story with no recommendation.
Section
Part 9
Concept
The instinct is to show the dashboard — the charts are attractive and the data is real. But a dashboard tour answers no question the audience actually has.
The value isn't the dashboard. It's what the dashboard reveals about a specific login, and what you'd do about it.
So structure the demo as an investigation the audience watches you perform, not as a product tour. Same screens, completely different reception.
The test: if your demo could be replaced by a screenshot, it's a tour. If it has a question at the start and an answer at the end, it's a story.
Explain it
Discussion prompt
Explain A dashboard is not a demo to a student a year behind you. No notation, no jargon they have not met — and it still has to be true.
Hint: If your explanation needs a symbol they have never seen, you are describing the notation rather than the idea.
Answer:
The instinct is to show the dashboard — the charts are attractive and the data is real. But a dashboard tour answers no question the audience actually has.
Ranking
Put in order
Put the moves of The five-beat investigation demo into the order they have to happen.
Why: These are the moves of the worked example in the order it makes them, and each one is set up by the one before it. Start with a real, recent, verifiable event.
Worked example
Roughly ten minutes. Every beat maps to a part of this deck.
Beat 1 — the setup. "We onboarded this application. Someone signed in twenty minutes ago."
Why: Start with a real, recent, verifiable event. Recency makes it feel live rather than staged.
Beat 2 — the hunt. Find the event on screen: time range, then User, then Target Application.
Why: Narrate the filter order. Watching you narrow systematically teaches the workflow better than any slide about it.
Beat 3 — the verdict. Read the level, the score, and the threshold aloud.
Why: Quoting the threshold pre-empts the 'what does 100 mean' question before it's asked.
Beat 4 — the evidence. Name each predictor that fired, in plain English.
Why: This is the beat that distinguishes your demo. Most people stop at beat 3 and wonder why nobody was impressed.
Beat 5 — the judgment. Give both readings, say which you believe, and recommend an action.
Why: Ending on a business decision is what makes a security tool look like a business tool.
Verify the whole run in rehearsal, with the real event, on the real screen.
Why: A filter that returns nothing on stage is recoverable; not knowing why it returned nothing is not.
Reverse engineer
Discussion prompt
Work backwards. The example finished here:
Verify the whole run in rehearsal, with the real event, on the real screen.
What was it asked to do, and what must it have been given? Reconstruct the problem from its answer.
Hint: Every quantity in the result had to enter somewhere. Account for each one.
Answer:
Roughly ten minutes. Every beat maps to a part of this deck.
Concept
Always close on this. It's the question behind the question, and most demos never reach it.
| Verdict | Typical business response |
|---|---|
| LOW | Nothing — the user passes silently, which is most of the value |
| MEDIUM | Step up: MFA or another challenge, without blocking |
| HIGH, likely legitimate | Challenge and verify out of band; consider an allow-list entry if it recurs |
| HIGH, likely malicious | Deny, revoke sessions, reset credentials, and preserve the evidence |
Notice the third row. Being wrong about a HIGH is not a failure of the tool — it's the normal case, and having a defined response for it is what makes the system deployable.
If your audience takes away one thing, make it this: Protect gives you a graded response instead of a binary one, and the grading is yours to set.
Analogy
Discussion prompt
Explain What the business does next by analogy to something with no Identity & Access Management in it at all — a queue, a recipe, a map, a bank balance, whatever fits. Then say where your analogy breaks.
Hint: An analogy that never breaks is not an analogy, it is the same idea wearing a hat. Find the seam — that is the part that is actually new.
Answer:
Always close on this. It's the question behind the question, and most demos never reach it.
Concept
There's a final move that impresses fraud teams specifically: telling Protect it got one wrong.
Feedback categories include FALSE_HIGH_RISK, FRIENDLY_BOT, NEW_ACCOUNT_FRAUD, COMPROMISED_ACCOUNT, and AUTOMATED_ATTACK.
An honest caveat to state plainly: at the time these docs were written, this is delivered through the riskFeedback API endpoint and the DaVinci connector's feedback capability. The documentation notes the capability "will also be added in the PingOne admin console in the future" — so don't promise a console button that isn't there yet.
Saying that out loud costs you nothing and buys a great deal. An audience that catches you overstating one thing discounts everything else you said.
Counterexample
Discussion prompt
Feedback categories include FALSE_HIGH_RISK, FRIENDLY_BOT, NEW_ACCOUNT_FRAUD, COMPROMISED_ACCOUNT, and AUTOMATED_ATTACK.
That is stated as though it always holds. Do one of two things: produce a case where it fails, or say precisely what rules such a case out. "It just does" is not on the menu.
Hint: Hunt at the extremes first — zero, one, negative, empty, equal. If every extreme survives, the reason they survive is the proof.
Answer:
Saying that out loud costs you nothing and buys a great deal. An audience that catches you overstating one thing discounts everything else you said.
Constraint
Discussion prompt
Run Investigation run of show with this step confiscated:
Beat 3: read level, score, threshold.
Is it still possible? If it is, say what takes its place and what it costs you. If it is not, say exactly what that step was providing that nothing else does.
Hint: A step you can drop for free was never load-bearing. If you cannot drop it, name the thing that goes wrong the moment it is gone.
Answer:
Pattern
The whole thing, start to finish.
Beats 4 and 5 are what people remember. Everything before them is navigation, and everything after is a bonus.
Real world
Discussion prompt
Outside this lesson: where does PingOne Protect - Investigating a Login, End to End actually turn up? Name one concrete situation — a job, a piece of software someone ships, a decision somebody has to make — and say which part of Investigation run of show is doing the work in it.
Hint: Vague is the failure mode here. "Engineering" is not a situation; "deciding whether this build is fast enough to ship" is.
Answer:
An investigation guide, in applied mode, for PingOne Protect. It shows how to find one specific login event after a user signs into an onboarded app and how to trace it across PingFederate, the PingOne audit log, and CloudWatch. It then covers filtering the Threat Protection dashboard systematically by user, application, IP, country, browser, OS, and user agent, and working around its constraints, since it accepts neither wildcards nor quotes. From there you decompose a risk level into the predictors that produced it, read each predictor as a single question, and argue the innocent explanation before calling anything an attack. The guide ends with how to deliver a five-sentence plain-English explanation that closes on a recommended action, plus seven traps, six checks, a five-beat demo run of show, and cited documentation links.
Elimination
Eliminate the wrong options
Which demo structure best conveys the value of PingOne Protect to a mixed business and technical audience?
3 of these 4 are wrong. Strike them one at a time, and say what rules each one out before you strike the next. The survivor is the answer.
Survives elimination: A
Why: The value of Protect is not the dashboard but what it reveals about a specific login and what should be done about it. An end-to-end investigation has a question at the start and a business decision at the end, which is what makes it a story rather than a tour — and it demonstrates the workflow the audience would actually perform.
Check
Final one. It's about what a demo has to accomplish.
Check your understanding
Which demo structure best conveys the value of PingOne Protect to a mixed business and technical audience?
Answer: A
Why: The value of Protect is not the dashboard but what it reveals about a specific login and what should be done about it. An end-to-end investigation has a question at the start and a business decision at the end, which is what makes it a story rather than a tour — and it demonstrates the workflow the audience would actually perform.
Section
Sources
Concept
Every product-behavior claim traces to a page below; all were fetched and confirmed to resolve.
These five share one base: docs.pingidentity.com/pingone/threat_protection_using_pingone_protect/
| What it backs up in this deck | Page (append to the base above) |
|---|---|
| Dashboard navigation, the seven filters, the three search constraints, Risk Details, the graphs | p1_protect_dashboard.html |
| Every predictor, what it detects, fallback values, allow lists | p1_protect_risk_predictors.html |
| Scores, thresholds, overrides — how a level is derived | p1_protect_risk_policies.html |
| Risk evaluations and completion status | p1_protect_risk_evaluations.html |
| Feedback categories, and that console feedback is not yet available | p1_protect_providing_feedback_risk_evaluations.html |
One more Protect page, for the ML training periods: p1_protect_getting_started.html under the same base.
Comparison
Comparison matrix
From Sources: PingOne Protect and the dashboard: refill the Page (append to the base above) column from what you know. The rest of the table is as it appeared.
| What it backs up in this deck | Page (append to the base above) |
|---|---|
| Dashboard navigation, the seven filters, the three search constraints, Risk Details, the graphs | p1_protect_dashboard.html |
| Every predictor, what it detects, fallback values, allow lists | p1_protect_risk_predictors.html |
| Scores, thresholds, overrides — how a level is derived | p1_protect_risk_policies.html |
| Risk evaluations and completion status | p1_protect_risk_evaluations.html |
| Feedback categories, and that console feedback is not yet available | p1_protect_providing_feedback_risk_evaluations.html |
Concept
The remaining pages, shown in full.
| What it backs up in this deck | URL |
|---|---|
| The Audit page, user vs configuration events, 90-day and 2-year retention, webhooks | docs.pingidentity.com/pingone/getting_started_with_pingone/p1_logging_reporting_overview.html |
| CloudWatch pipeline: Audit Logs API, worker app, OAuth2, Secrets Manager, regions, OCSF classes | docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/pingidentity-pingone-setup.html |
| The OCSF event lists and the source configuration detail | docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/pingidentity-pingone-source-setup.html |
| correlationId / transactionId / externalTransactionId — the PingFederate bridge | docs.pingidentity.com/davinci/davinci_best_practices/davinci_best_practices_debugging_and_analytics.html |
| Validating the integration via Risk Evaluation Created audit events | docs.pingidentity.com/pingoneaic/integrations/pingone-protect.html |
One scoping note, stated honestly: the correlation identifiers above are documented in a DaVinci context. If DaVinci is not in your authentication path, treat them as unavailable and join on username, timestamp, IP, and target application instead — which is what this deck's workflow actually relies on.
The investigation craft — the three questions, the challenge checklist, the two-readings table, the five-sentence template — is the author's, layered on the documented behavior cited above.
Connect it up
Draw it
One page, no notation unless you need it: draw how these connect — The Reframe · The Plumbing · Finding the Event · Using the Filters · Reading the Score · Predictors as Detectors. Put an arrow wherever one of them is what makes another possible, and label the arrow with why.
Recap
You can take "a user just logged in" and turn it into an explanation someone can act on.
The three habits that matter most:
Pair this with the Protect demo-build deck for setup, and the DaVinci deck for the flow that acts on the verdict.
Want this taught 1-on-1? Alexander tutors Identity & Access Management — $55/session, free consultation.