Migrate TI provider to new ThreatIntelIndicators table schema #870
+220
−50
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Microsoft Sentinel deprecated the
ThreatIntelligenceIndicatortable in favor ofThreatIntelIndicatorswith STIX 2.1 schema. The old table stops ingesting data August 2025, causing TI lookups to return zero results.Query Schema Migration
Updated all KQL queries to use STIX observable pattern matching:
Observable key mappings:
ipv4-addr:value,ipv6-addr:valuefile:hashes.MD5,file:hashes.SHA-1,file:hashes.SHA-256domain-name:valueurl:valueemail-addr:valuefile:name,directory:pathChanged unique identifier from
IndicatorIdtoIdfor deduplication.Provider Backward Compatibility
Enhanced result parsing to handle both schemas:
Extracted confidence threshold to class constant
_HIGH_CONFIDENCE_THRESHOLD = 80.Files Changed
kql_sent_threatintel.yaml: Table name and query patterns for all 7 IOC typesazure_sent_byoti.py: Table reference, result parsing with dual schema supporttest_tiprovider_kql.py: Mock driver updated for new query patternsWarning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
learn.microsoft.com/home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js(dns block)publicsuffix.org/usr/bin/python python -m pytest tests/context/test_tiprovider_kql.py -v tem ]; then /usr/lib/php/sessionclean; fi(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.