Safeguarding - Protecting Your Kafka from Misbehaving Clients with Tom Scott

Safeguarding - protecting your clusters
from misbehaving clients.
Tom Scott
● Principal Engineer - Conduktor
Gateway
● 6 years in Kafka across many roles
● 15+ yrs in all things data
Who am I?
● To minimise outages
● To respond gracefully to change
● To reduce friction between domains
Result: Velocity!
Start with Why
The practice of protecting your data and
infrastructure from intentional and
unintentional threats, both internal and
external.
What is Safeguarding?
Data Governance
“
Technical Best
Practices
Safeguarding
A collection of loose, negotiable contracts enforced by
humans.
Case in point: The “production readiness” check
These suffer from:
● Relevance - scoped for multiple applications in multiple technologies
● Timeliness - Seen as a box check to be completed just before go live
● Perception - Rules to be bent/ignored, “what can we get away with?”
Stage 1: safeguarding by habit
“Your application is behaving badly”
Now what?
● Uncomfortable decisions
● Temporary solutions (that become permanent)
● Tech debt
Stage 2: reactive automation
● Enforced at the earliest point
● Applied in every environment
● Specific and detailed information on breaches
Examples include:
● Schema validation
● Partition count limits
● Automatic encryption
Stage 3: proactive automation
How? (but actually where)
A Client Plugin
A Broker Plugin
A Proxy
Application
Proxy
Application
Encryption
Interceptor
Schema Validation
Interceptor
Ring fenced
Conduktor Gateway - a Kafka
Proxy
● Interceptors - functions that perform
transformation/filtering/projection on Kafka
requests/responses
● Gateway embeds one or more interceptors
● To a client:
Gateway == Kafka Brokers
● Proactive safeguarding:
○ Prevents outages
○ Resets perception
● Enforced inter-domain contracts help:
○ React gracefully to change
○ Reach broader technical goals
○ Reduce friction
● Proactive safeguarding does not:
○ Define governance/best practice policies
○ Fully replace reactive solutions
In summary
Q&A
1 sur 11

Recommandé

3 Keys to Performance Testing at the Speed of Agile par
3 Keys to Performance Testing at the Speed of Agile3 Keys to Performance Testing at the Speed of Agile
3 Keys to Performance Testing at the Speed of AgileNeotys
36 vues26 diapositives
What to Expect When You're Expecting (to Own Production) par
What to Expect When You're Expecting (to Own Production)What to Expect When You're Expecting (to Own Production)
What to Expect When You're Expecting (to Own Production)Michael Diamant
201 vues12 diapositives
Technical Practices for Agile Engineering - PNSQC 2019 par
Technical Practices for Agile Engineering - PNSQC 2019Technical Practices for Agile Engineering - PNSQC 2019
Technical Practices for Agile Engineering - PNSQC 2019Moss Drake
94 vues31 diapositives
Barbed Wire Network Security Policy 27 June 2005 7 par
Barbed Wire Network Security Policy 27 June 2005 7Barbed Wire Network Security Policy 27 June 2005 7
Barbed Wire Network Security Policy 27 June 2005 7Khawar Nehal khawar.nehal@atrc.net.pk
1.1K vues59 diapositives
Bridging the Gap Between Development and Regulatory Teams par
Bridging the Gap Between Development and Regulatory TeamsBridging the Gap Between Development and Regulatory Teams
Bridging the Gap Between Development and Regulatory TeamsICS
44 vues30 diapositives
L10 Architecture Considerations par
L10 Architecture ConsiderationsL10 Architecture Considerations
L10 Architecture ConsiderationsÓlafur Andri Ragnarsson
559 vues44 diapositives

Contenu connexe

Similaire à Safeguarding - Protecting Your Kafka from Misbehaving Clients with Tom Scott

ITB2015 - Monitoring and Tracking Your Web Applications par
ITB2015 - Monitoring and Tracking Your Web ApplicationsITB2015 - Monitoring and Tracking Your Web Applications
ITB2015 - Monitoring and Tracking Your Web ApplicationsOrtus Solutions, Corp
723 vues18 diapositives
Application performance management - FusionReactor Presentation 'Into The Bo... par
Application performance management - FusionReactor Presentation  'Into The Bo...Application performance management - FusionReactor Presentation  'Into The Bo...
Application performance management - FusionReactor Presentation 'Into The Bo...FusionReactor
583 vues18 diapositives
Application performance management - FusionReactor Presentation 'Into The Bo... par
Application performance management - FusionReactor Presentation  'Into The Bo...Application performance management - FusionReactor Presentation  'Into The Bo...
Application performance management - FusionReactor Presentation 'Into The Bo...David Thacker
92 vues18 diapositives
Sol linux cmg-t_1_1.pptx par
Sol linux cmg-t_1_1.pptxSol linux cmg-t_1_1.pptx
Sol linux cmg-t_1_1.pptxBob Sneed
2K vues129 diapositives
Bridging the Gap Between Development and Regulatory Teams par
Bridging the Gap Between Development and Regulatory TeamsBridging the Gap Between Development and Regulatory Teams
Bridging the Gap Between Development and Regulatory TeamsICS
104 vues31 diapositives
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02 par
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02PacSecJP
571 vues24 diapositives

Similaire à Safeguarding - Protecting Your Kafka from Misbehaving Clients with Tom Scott(20)

Application performance management - FusionReactor Presentation 'Into The Bo... par FusionReactor
Application performance management - FusionReactor Presentation  'Into The Bo...Application performance management - FusionReactor Presentation  'Into The Bo...
Application performance management - FusionReactor Presentation 'Into The Bo...
FusionReactor583 vues
Application performance management - FusionReactor Presentation 'Into The Bo... par David Thacker
Application performance management - FusionReactor Presentation  'Into The Bo...Application performance management - FusionReactor Presentation  'Into The Bo...
Application performance management - FusionReactor Presentation 'Into The Bo...
David Thacker92 vues
Sol linux cmg-t_1_1.pptx par Bob Sneed
Sol linux cmg-t_1_1.pptxSol linux cmg-t_1_1.pptx
Sol linux cmg-t_1_1.pptx
Bob Sneed2K vues
Bridging the Gap Between Development and Regulatory Teams par ICS
Bridging the Gap Between Development and Regulatory TeamsBridging the Gap Between Development and Regulatory Teams
Bridging the Gap Between Development and Regulatory Teams
ICS104 vues
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02 par PacSecJP
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
Ryder robertson security-considerations_in_the_supply_chain_2017.11.02
PacSecJP571 vues
Break Up the Monolith- Testing Microservices by Marcus Merrell par Sauce Labs
Break Up the Monolith- Testing Microservices by Marcus MerrellBreak Up the Monolith- Testing Microservices by Marcus Merrell
Break Up the Monolith- Testing Microservices by Marcus Merrell
Sauce Labs134 vues
Agile contract for working software par Joshua Lai
Agile contract for working softwareAgile contract for working software
Agile contract for working software
Joshua Lai235 vues
Clean architecture par .NET Crowd
Clean architectureClean architecture
Clean architecture
.NET Crowd3.5K vues
Info dev flexibility in agile par Alyssa Fox
Info dev flexibility in agileInfo dev flexibility in agile
Info dev flexibility in agile
Alyssa Fox1.2K vues
OWASP AppSec EU 2016 - Security Project Management - How to be Agile in Secu... par Simone Onofri
OWASP AppSec EU 2016 - Security Project Management -  How to be Agile in Secu...OWASP AppSec EU 2016 - Security Project Management -  How to be Agile in Secu...
OWASP AppSec EU 2016 - Security Project Management - How to be Agile in Secu...
Simone Onofri970 vues
The Risks of YOLOing-2.pdf par Hacken
The Risks of YOLOing-2.pdfThe Risks of YOLOing-2.pdf
The Risks of YOLOing-2.pdf
Hacken 90 vues
Moving to cloud a checklist of top tips to help you migrate to the cloud © ... par Paul McCormack
Moving to cloud   a checklist of top tips to help you migrate to the cloud © ...Moving to cloud   a checklist of top tips to help you migrate to the cloud © ...
Moving to cloud a checklist of top tips to help you migrate to the cloud © ...
Paul McCormack696 vues
Performance tuning Grails applications SpringOne 2GX 2014 par Lari Hotari
Performance tuning Grails applications SpringOne 2GX 2014Performance tuning Grails applications SpringOne 2GX 2014
Performance tuning Grails applications SpringOne 2GX 2014
Lari Hotari3.7K vues
CISSP Week 22 par jemtallon
CISSP Week 22CISSP Week 22
CISSP Week 22
jemtallon1.7K vues
TQM-Prevention is better than cure par lahin95
TQM-Prevention is better than cureTQM-Prevention is better than cure
TQM-Prevention is better than cure
lahin951.8K vues

Plus de HostedbyConfluent

Build Real-time Machine Learning Apps on Generative AI with Kafka Streams par
Build Real-time Machine Learning Apps on Generative AI with Kafka StreamsBuild Real-time Machine Learning Apps on Generative AI with Kafka Streams
Build Real-time Machine Learning Apps on Generative AI with Kafka StreamsHostedbyConfluent
62 vues26 diapositives
When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ... par
When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ...When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ...
When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ...HostedbyConfluent
26 vues84 diapositives
Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ... par
Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ...Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ...
Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ...HostedbyConfluent
55 vues97 diapositives
Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern... par
Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern...Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern...
Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern...HostedbyConfluent
50 vues15 diapositives
Rule Based Asset Management Workflow Automation at Netflix par
Rule Based Asset Management Workflow Automation at NetflixRule Based Asset Management Workflow Automation at Netflix
Rule Based Asset Management Workflow Automation at NetflixHostedbyConfluent
31 vues56 diapositives
Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML... par
Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML...Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML...
Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML...HostedbyConfluent
56 vues32 diapositives

Plus de HostedbyConfluent(20)

Build Real-time Machine Learning Apps on Generative AI with Kafka Streams par HostedbyConfluent
Build Real-time Machine Learning Apps on Generative AI with Kafka StreamsBuild Real-time Machine Learning Apps on Generative AI with Kafka Streams
Build Real-time Machine Learning Apps on Generative AI with Kafka Streams
When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ... par HostedbyConfluent
When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ...When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ...
When Only the Last Writer Wins We All Lose: Active-Active Geo-Replication in ...
Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ... par HostedbyConfluent
Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ...Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ...
Apache Kafka's Next-Gen Rebalance Protocol: Towards More Stable and Scalable ...
Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern... par HostedbyConfluent
Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern...Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern...
Using Kafka at Scale - A Case Study of Micro Services Data Pipelines at Evern...
Rule Based Asset Management Workflow Automation at Netflix par HostedbyConfluent
Rule Based Asset Management Workflow Automation at NetflixRule Based Asset Management Workflow Automation at Netflix
Rule Based Asset Management Workflow Automation at Netflix
Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML... par HostedbyConfluent
Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML...Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML...
Scalable E-Commerce Data Pipelines with Kafka: Real-Time Analytics, Batch, ML...
Indeed Flex: The Story of a Revolutionary Recruitment Platform par HostedbyConfluent
Indeed Flex: The Story of a Revolutionary Recruitment PlatformIndeed Flex: The Story of a Revolutionary Recruitment Platform
Indeed Flex: The Story of a Revolutionary Recruitment Platform
Forecasting Kafka Lag Issues with Machine Learning par HostedbyConfluent
Forecasting Kafka Lag Issues with Machine LearningForecasting Kafka Lag Issues with Machine Learning
Forecasting Kafka Lag Issues with Machine Learning
Getting Under the Hood of Kafka Streams: Optimizing Storage Engines to Tune U... par HostedbyConfluent
Getting Under the Hood of Kafka Streams: Optimizing Storage Engines to Tune U...Getting Under the Hood of Kafka Streams: Optimizing Storage Engines to Tune U...
Getting Under the Hood of Kafka Streams: Optimizing Storage Engines to Tune U...
Maximizing Real-Time Data Processing with Apache Kafka and InfluxDB: A Compre... par HostedbyConfluent
Maximizing Real-Time Data Processing with Apache Kafka and InfluxDB: A Compre...Maximizing Real-Time Data Processing with Apache Kafka and InfluxDB: A Compre...
Maximizing Real-Time Data Processing with Apache Kafka and InfluxDB: A Compre...
Accelerating Path to Production for Generative AI-powered Applications par HostedbyConfluent
Accelerating Path to Production for Generative AI-powered ApplicationsAccelerating Path to Production for Generative AI-powered Applications
Accelerating Path to Production for Generative AI-powered Applications
Optimize Costs and Scale Your Streaming Applications with Virtually Unlimited... par HostedbyConfluent
Optimize Costs and Scale Your Streaming Applications with Virtually Unlimited...Optimize Costs and Scale Your Streaming Applications with Virtually Unlimited...
Optimize Costs and Scale Your Streaming Applications with Virtually Unlimited...
Don’t Let Degradation Bring You Down: Automatically Detect & Remediate Degrad... par HostedbyConfluent
Don’t Let Degradation Bring You Down: Automatically Detect & Remediate Degrad...Don’t Let Degradation Bring You Down: Automatically Detect & Remediate Degrad...
Don’t Let Degradation Bring You Down: Automatically Detect & Remediate Degrad...
Go Big or Go Home: Approaching Kafka Replication at Scale par HostedbyConfluent
Go Big or Go Home: Approaching Kafka Replication at ScaleGo Big or Go Home: Approaching Kafka Replication at Scale
Go Big or Go Home: Approaching Kafka Replication at Scale
What's in store? Part Deux; Creating Custom Queries with Kafka Streams IQv2 par HostedbyConfluent
What's in store? Part Deux; Creating Custom Queries with Kafka Streams IQv2What's in store? Part Deux; Creating Custom Queries with Kafka Streams IQv2
What's in store? Part Deux; Creating Custom Queries with Kafka Streams IQv2
A Trifecta of Real-Time Applications: Apache Kafka, Flink, and Druid par HostedbyConfluent
A Trifecta of Real-Time Applications: Apache Kafka, Flink, and DruidA Trifecta of Real-Time Applications: Apache Kafka, Flink, and Druid
A Trifecta of Real-Time Applications: Apache Kafka, Flink, and Druid
From Raw Data to an Interactive Data App in an Hour: Powered by Snowpark Python par HostedbyConfluent
From Raw Data to an Interactive Data App in an Hour: Powered by Snowpark PythonFrom Raw Data to an Interactive Data App in an Hour: Powered by Snowpark Python
From Raw Data to an Interactive Data App in an Hour: Powered by Snowpark Python
Beyond Monoliths: Thrivent’s Lessons in Building a Modern Integration Archite... par HostedbyConfluent
Beyond Monoliths: Thrivent’s Lessons in Building a Modern Integration Archite...Beyond Monoliths: Thrivent’s Lessons in Building a Modern Integration Archite...
Beyond Monoliths: Thrivent’s Lessons in Building a Modern Integration Archite...
Exactly-Once Semantics Revisited: Distributed Transactions across Flink and K... par HostedbyConfluent
Exactly-Once Semantics Revisited: Distributed Transactions across Flink and K...Exactly-Once Semantics Revisited: Distributed Transactions across Flink and K...
Exactly-Once Semantics Revisited: Distributed Transactions across Flink and K...

Dernier

The details of description: Techniques, tips, and tangents on alternative tex... par
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...BookNet Canada
126 vues24 diapositives
Info Session November 2023.pdf par
Info Session November 2023.pdfInfo Session November 2023.pdf
Info Session November 2023.pdfAleksandraKoprivica4
11 vues15 diapositives
The Research Portal of Catalonia: Growing more (information) & more (services) par
The Research Portal of Catalonia: Growing more (information) & more (services)The Research Portal of Catalonia: Growing more (information) & more (services)
The Research Portal of Catalonia: Growing more (information) & more (services)CSUC - Consorci de Serveis Universitaris de Catalunya
79 vues25 diapositives
Spesifikasi Lengkap ASUS Vivobook Go 14 par
Spesifikasi Lengkap ASUS Vivobook Go 14Spesifikasi Lengkap ASUS Vivobook Go 14
Spesifikasi Lengkap ASUS Vivobook Go 14Dot Semarang
37 vues1 diapositive
Tunable Laser (1).pptx par
Tunable Laser (1).pptxTunable Laser (1).pptx
Tunable Laser (1).pptxHajira Mahmood
24 vues37 diapositives
Scaling Knowledge Graph Architectures with AI par
Scaling Knowledge Graph Architectures with AIScaling Knowledge Graph Architectures with AI
Scaling Knowledge Graph Architectures with AIEnterprise Knowledge
28 vues15 diapositives

Dernier(20)

The details of description: Techniques, tips, and tangents on alternative tex... par BookNet Canada
The details of description: Techniques, tips, and tangents on alternative tex...The details of description: Techniques, tips, and tangents on alternative tex...
The details of description: Techniques, tips, and tangents on alternative tex...
BookNet Canada126 vues
Spesifikasi Lengkap ASUS Vivobook Go 14 par Dot Semarang
Spesifikasi Lengkap ASUS Vivobook Go 14Spesifikasi Lengkap ASUS Vivobook Go 14
Spesifikasi Lengkap ASUS Vivobook Go 14
Dot Semarang37 vues
Transcript: The Details of Description Techniques tips and tangents on altern... par BookNet Canada
Transcript: The Details of Description Techniques tips and tangents on altern...Transcript: The Details of Description Techniques tips and tangents on altern...
Transcript: The Details of Description Techniques tips and tangents on altern...
BookNet Canada135 vues
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... par Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker33 vues
From chaos to control: Managing migrations and Microsoft 365 with ShareGate! par sammart93
From chaos to control: Managing migrations and Microsoft 365 with ShareGate!From chaos to control: Managing migrations and Microsoft 365 with ShareGate!
From chaos to control: Managing migrations and Microsoft 365 with ShareGate!
sammart939 vues
handbook for web 3 adoption.pdf par Liveplex
handbook for web 3 adoption.pdfhandbook for web 3 adoption.pdf
handbook for web 3 adoption.pdf
Liveplex22 vues
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors par sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab19 vues
STPI OctaNE CoE Brochure.pdf par madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb13 vues
Case Study Copenhagen Energy and Business Central.pdf par Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana16 vues
Business Analyst Series 2023 - Week 3 Session 5 par DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10237 vues

Safeguarding - Protecting Your Kafka from Misbehaving Clients with Tom Scott

  • 1. Safeguarding - protecting your clusters from misbehaving clients. Tom Scott
  • 2. ● Principal Engineer - Conduktor Gateway ● 6 years in Kafka across many roles ● 15+ yrs in all things data Who am I?
  • 3. ● To minimise outages ● To respond gracefully to change ● To reduce friction between domains Result: Velocity! Start with Why
  • 4. The practice of protecting your data and infrastructure from intentional and unintentional threats, both internal and external. What is Safeguarding? Data Governance “ Technical Best Practices Safeguarding
  • 5. A collection of loose, negotiable contracts enforced by humans. Case in point: The “production readiness” check These suffer from: ● Relevance - scoped for multiple applications in multiple technologies ● Timeliness - Seen as a box check to be completed just before go live ● Perception - Rules to be bent/ignored, “what can we get away with?” Stage 1: safeguarding by habit
  • 6. “Your application is behaving badly” Now what? ● Uncomfortable decisions ● Temporary solutions (that become permanent) ● Tech debt Stage 2: reactive automation
  • 7. ● Enforced at the earliest point ● Applied in every environment ● Specific and detailed information on breaches Examples include: ● Schema validation ● Partition count limits ● Automatic encryption Stage 3: proactive automation
  • 8. How? (but actually where) A Client Plugin A Broker Plugin A Proxy
  • 9. Application Proxy Application Encryption Interceptor Schema Validation Interceptor Ring fenced Conduktor Gateway - a Kafka Proxy ● Interceptors - functions that perform transformation/filtering/projection on Kafka requests/responses ● Gateway embeds one or more interceptors ● To a client: Gateway == Kafka Brokers
  • 10. ● Proactive safeguarding: ○ Prevents outages ○ Resets perception ● Enforced inter-domain contracts help: ○ React gracefully to change ○ Reach broader technical goals ○ Reduce friction ● Proactive safeguarding does not: ○ Define governance/best practice policies ○ Fully replace reactive solutions In summary
  • 11. Q&A