SlideShare a Scribd company logo
1 of 40
Kerberos, Token and Hadoop 
MIT Kerberos Day 
Intel Big Data Technologies 
kai.zheng@intel.com 
1
Outline 
1. Kerberos and Hadoop 
2. Token and Hadoop 
3. Token and Kerberos 
4. Kerberos, Token and Hadoop 
5. Future work 
2
Apache Hadoop 
3
4 
When Hadoop adding security 
 Initially no authentication at all 
 Kerberos or SSL/TLS? 
 Adding security should not impact performance much 
 Kerberos is used to authenticate users, GSSAPI/SASL is 
used between C/S, encryption on wire could be optional
 End users to services, using password 
 Services to services, using service credentials/keytabs 
 Services to services, delegating users, using service 
credentials 
 MR tasks to services, delegating users, using delegation 
token 
Kerberos authentication 
5
6 
Client authentication
7 
Deploying Kerberos 
Provisioning service credentials/keytabs
8 
Deploying Kerberos (cont'd)
Strengths 
 Symmetric encryption, mutual authentication 
 Flexible SASL QoP, authentication (privacy) by default 
 Command line (kinit, SSO) + Browser (SPNEGO) 
 Mature, available in Linux/Windows + J2SE 
9
Challenges 
 Hadoop ecosystem is large and still fast evolving, other 
authentication solutions are desired 
 Hadoop cluster can be large, the traffic can be huge 
 Services are dynamically provisioned and relocated on 
demand 
 Applications are to run in containerized environment, and 
can be dynamically scheduled and relocated to other 
nodes automatically 
 Different deployment environments and scenarios, with 
different requirements 
10
 Lagged Kerberos feature support in Java (PKINIT, S2U 
only added recently, etc.) 
 Lacking fine-grained authorization support 
 Lacking strong delegation support in Kerberos/Java stack 
 Inconvenient and limited browser access via SPNEGO, for 
work around to bypass Kerberos exposing internal 
delegation token 
 Encryption not set in SASL via (QoP) by default, and might 
involve performance impact (benchmark and 
optimization?) 
 AES 256 isn’t supported by Java by default 
 Just get it work, allow_weak_crypto is used; 
 kinit –R issue 
Problems 
11
Outline 
1. Kerberos and Hadoop 
2. Token and Hadoop 
3. Token and Kerberos 
4. Kerberos, Token and Hadoop 
5. Future work 
12
Hadoop tokens 
Existing Hadoop tokens for internal authentication: 
delegation token, job token, block access token … 
13
TokenAuth effort 
Proposed token for primary/initial authentication 
14
Requirements 
 Allow to integrate 3rd party authentication solutions 
 Help enforce fine-grained authorization 
 Supporting OAuth 2.0 token and work flow is desired for 
cloud deployment 
15
Challenges 
 Involve great change over the ecosystem 
 May break existing applications built on the platform 
 Over complex, involving both Identity Token and Access 
Token with related services, the work flow is quite 
complex. (Reinvent Kerberos?) 
 Big impact for performance or security concerns 
We either use TLS/SSL to protect token or don’t care about it at all. 
The former involves performance impact, the latter suffers security 
consideration. 
16
Outline 
1. Kerberos and Hadoop 
2. Token and Hadoop 
3. Token and Kerberos 
4. Kerberos, Token and Hadoop 
5. Future work 
17
TokenPreauth mechanism 
Allows user to authenticate to KDC using 3rd party tokens instead of 
password 
18
TokenPreauth mechanism (cont’d) 
 Defines required token attribute values based on JWT 
token, reusing existing attributes 
 Support Bearer Token and allows to support Holder-of-Key 
Token in future 
 Support Identity Token (or ID Token) and allows to support 
Access Token in future 
19
TokenPreauth mechanism (cont’d) 
 Client principal may exist or not during token validating 
and ticket issuing 
 kinit –X token=[Your-Token], by default ref. ~/.kerbtoken 
 How token being generated may be out of scope, left for 
token authority 
 Identity Token -> Ticket Granting Ticket, Access Token -> 
Service Ticket 
 Ticket lifetime derived from token SHOULD be in the time 
frame of the token 
 Ticket derived from token may be not renewable 
20
Access Token profile 
 Based on TokenPreauth, allow Access Token to be used 
to request Service Ticket directly in AS exchange 
 Should be useful to support OAuth 2.0 Web flow in 
Kerberized Resource Server with backend service 
21
Why it matters 
 Token and OAuth are widely used in Internet, cloud and 
mobile, more and more popular 
 It allows Kerberized systems to be supported in token’s 
world 
 Also allows Kerberized systems to integrate other 
authentication solutions thru token and Token Authority, 
without modification of existing codes. 
 May help Kerberos evolve in both cloud and big data 
platform 
 Make extra sense for Hadoop, supporting token across the 
ecosystem without performance impact 
22
How it is going 
 We’re collaborating with MIT to standardize 
 Initial drafts, under MIT team’s review 
 Should be submitted to KITTEN WG soon 
 PoC done targeting for Hadoop 
23
Outline 
1. Kerberos and Hadoop 
2. Token and Hadoop 
3. Token and Kerberos 
4. Kerberos, Token and Hadoop 
5. Future work 
24
Kerberos + Token for Hadoop 
 Let’s combine all of these together
PoC: TokenPreauth plugin 
26
PoC: Token authentication JAAS module 
27
PoC: Browser and Web support 
28
 Implement the mechanism and have it included in next 
MIT Kerberos release, collaborating with MIT team 
 Or at least, provide the plugin binary download and source 
codes repository for public usage and review 
 Make a complete token solution based on Kerberos for 
Hadoop 
Next step 
29
 The Repo: 
https://github.com/drankye/haox 
 Working on a first class Java Kerberos client library 
 Catch up with latest Kerberos features and fill gaps lagged 
by Java 
– PKINIT 
– TokenPreauth 
Haox project 
30
Haox-asn1 
 A data driven ASN-1 encoding/decoding framework 
 A simple example, AuthorizationData type from RFC4210 
31
Haox-asn1 (cont’d) 
 A data driven ASN-1 encoding/decoding framework 
 A simple example, AuthorizationData type from RFC4210 
32
Haox-asn1 (cont’d) 
 A data driven ASN-1 encoding/decoding framework 
 A more complex example, from X.690-0207 
33
Haox kerb-crypto 
 Implementing des, des3, rc4, aes, camellia encryption and 
corresponding checksum types 
 Interoperates with MIT Kerberos 
 Independent with Kerberos codes in JRE, but rely on JCE 
34
 ASN-1 (done) 
 Core spec types (done) 
 Crypto (done) 
 AS client (going) 
 Preauth framework (going) 
 PKINIT (going) 
Haox Status 
35
Future work 
 Combining all of these effort together, make a complete 
token solution for Hadoop 
 Additionally, we’d also like to make Kerberos deployment 
be more easily and readily even for large Hadoop clusters 
It’s Intel’s mission that makes Hadoop more enterprise-grade security 
ready 
 We’re also interested in evolving Kerberos for cloud 
platform, particularly, how Kerberized services and 
applications can be dynamically scheduled to nodes and 
bootstrap 
 Will investigate how Intel’s technology like TEE/TXT can 
help thru all of these 
36
Trusted Execution Technology (TXT) 
 Establishing root of trust through measurement of 
hardware and pre-launch software components, and 
utilizing the result, 
1.Run your workload and data on a trusted 
2.Protect your workload and data 
3.Avoid compromising security in the cloud 
4.Sealed and secured storage 
37
Kerberos with TXT 
 With the secured storage provided by TXT, 
1.Protect credential cache to store TGTs for Kerberos 
2.Protect token cache for Hadoop 
3.Protect encryption keys for data 
4.Protect key store for management
Kerberos with TXT (cont’d) 
 With secured token cache and trusted execution by TXT, 
TokenPreauth can be deployed with host keytab/cert
Thanks! 
You feedback are very welcome 
Please contact kai.zheng@intel.com for update. 
40

More Related Content

What's hot

Bridging the gap: Adding missing client (security) features using OpenLDAP pr...
Bridging the gap: Adding missing client (security) features using OpenLDAP pr...Bridging the gap: Adding missing client (security) features using OpenLDAP pr...
Bridging the gap: Adding missing client (security) features using OpenLDAP pr...LDAPCon
 
Building Open Source Identity Management with FreeIPA
Building Open Source Identity Management with FreeIPABuilding Open Source Identity Management with FreeIPA
Building Open Source Identity Management with FreeIPALDAPCon
 
Kerberos and its application in cross realm operations
Kerberos and its application in cross realm operationsKerberos and its application in cross realm operations
Kerberos and its application in cross realm operationsArunangshu Bhakta
 
Deep Dive into Keystone Tokens and Lessons Learned
Deep Dive into Keystone Tokens and Lessons LearnedDeep Dive into Keystone Tokens and Lessons Learned
Deep Dive into Keystone Tokens and Lessons LearnedPriti Desai
 
Securing Hadoop by Sr. Principal Technologist Keys Botzum
Securing Hadoop by Sr. Principal Technologist Keys BotzumSecuring Hadoop by Sr. Principal Technologist Keys Botzum
Securing Hadoop by Sr. Principal Technologist Keys BotzumMapR Technologies
 
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio TavillaOpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio TavillaLorenzo Carnevale
 
Map r hadoop-security-mar2014 (2)
Map r hadoop-security-mar2014 (2)Map r hadoop-security-mar2014 (2)
Map r hadoop-security-mar2014 (2)MapR Technologies
 
SPS Ozarks 2012: Kerberos Survival Guide
SPS Ozarks 2012: Kerberos Survival GuideSPS Ozarks 2012: Kerberos Survival Guide
SPS Ozarks 2012: Kerberos Survival GuideJ.D. Wade
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Stephen Gordon
 
IBM Spectrum Scale Authentication For Object - Deep Dive
IBM Spectrum Scale Authentication For Object - Deep Dive IBM Spectrum Scale Authentication For Object - Deep Dive
IBM Spectrum Scale Authentication For Object - Deep Dive Smita Raut
 
BSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopBSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopAjay Choudhary
 
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio TavillaOpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio TavillaLorenzo Carnevale
 
Kerberos Survival Guide: SharePoint Saturday Nashville 2015
Kerberos Survival Guide: SharePoint Saturday Nashville 2015Kerberos Survival Guide: SharePoint Saturday Nashville 2015
Kerberos Survival Guide: SharePoint Saturday Nashville 2015J.D. Wade
 
A Backend to tie them all?
A Backend to tie them all?A Backend to tie them all?
A Backend to tie them all?LDAPCon
 
Kerberos Survival Guide SPS Chicago
Kerberos Survival Guide SPS ChicagoKerberos Survival Guide SPS Chicago
Kerberos Survival Guide SPS ChicagoJ.D. Wade
 
Open Source Security Tools for Big Data
Open Source Security Tools for Big DataOpen Source Security Tools for Big Data
Open Source Security Tools for Big DataRommel Garcia
 
Keystone deep dive 1
Keystone deep dive 1Keystone deep dive 1
Keystone deep dive 1Jsonr4
 
Building IAM for OpenStack
Building IAM for OpenStackBuilding IAM for OpenStack
Building IAM for OpenStackSteve Martinelli
 
Security_of_openstack_keystone
Security_of_openstack_keystoneSecurity_of_openstack_keystone
Security_of_openstack_keystoneUT, San Antonio
 

What's hot (20)

Bridging the gap: Adding missing client (security) features using OpenLDAP pr...
Bridging the gap: Adding missing client (security) features using OpenLDAP pr...Bridging the gap: Adding missing client (security) features using OpenLDAP pr...
Bridging the gap: Adding missing client (security) features using OpenLDAP pr...
 
Building Open Source Identity Management with FreeIPA
Building Open Source Identity Management with FreeIPABuilding Open Source Identity Management with FreeIPA
Building Open Source Identity Management with FreeIPA
 
Kerberos and its application in cross realm operations
Kerberos and its application in cross realm operationsKerberos and its application in cross realm operations
Kerberos and its application in cross realm operations
 
Deep Dive into Keystone Tokens and Lessons Learned
Deep Dive into Keystone Tokens and Lessons LearnedDeep Dive into Keystone Tokens and Lessons Learned
Deep Dive into Keystone Tokens and Lessons Learned
 
Securing Hadoop by Sr. Principal Technologist Keys Botzum
Securing Hadoop by Sr. Principal Technologist Keys BotzumSecuring Hadoop by Sr. Principal Technologist Keys Botzum
Securing Hadoop by Sr. Principal Technologist Keys Botzum
 
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio TavillaOpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (kilo) by Lorenzo Carnevale and Silvio Tavilla
 
Map r hadoop-security-mar2014 (2)
Map r hadoop-security-mar2014 (2)Map r hadoop-security-mar2014 (2)
Map r hadoop-security-mar2014 (2)
 
OpenStack Keystone
OpenStack KeystoneOpenStack Keystone
OpenStack Keystone
 
SPS Ozarks 2012: Kerberos Survival Guide
SPS Ozarks 2012: Kerberos Survival GuideSPS Ozarks 2012: Kerberos Survival Guide
SPS Ozarks 2012: Kerberos Survival Guide
 
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)Deep Dive: OpenStack Summit (Red Hat Summit 2014)
Deep Dive: OpenStack Summit (Red Hat Summit 2014)
 
IBM Spectrum Scale Authentication For Object - Deep Dive
IBM Spectrum Scale Authentication For Object - Deep Dive IBM Spectrum Scale Authentication For Object - Deep Dive
IBM Spectrum Scale Authentication For Object - Deep Dive
 
BSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming WorkshopBSides SG Practical Red Teaming Workshop
BSides SG Practical Red Teaming Workshop
 
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio TavillaOpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
OpenStack Identity - Keystone (liberty) by Lorenzo Carnevale and Silvio Tavilla
 
Kerberos Survival Guide: SharePoint Saturday Nashville 2015
Kerberos Survival Guide: SharePoint Saturday Nashville 2015Kerberos Survival Guide: SharePoint Saturday Nashville 2015
Kerberos Survival Guide: SharePoint Saturday Nashville 2015
 
A Backend to tie them all?
A Backend to tie them all?A Backend to tie them all?
A Backend to tie them all?
 
Kerberos Survival Guide SPS Chicago
Kerberos Survival Guide SPS ChicagoKerberos Survival Guide SPS Chicago
Kerberos Survival Guide SPS Chicago
 
Open Source Security Tools for Big Data
Open Source Security Tools for Big DataOpen Source Security Tools for Big Data
Open Source Security Tools for Big Data
 
Keystone deep dive 1
Keystone deep dive 1Keystone deep dive 1
Keystone deep dive 1
 
Building IAM for OpenStack
Building IAM for OpenStackBuilding IAM for OpenStack
Building IAM for OpenStack
 
Security_of_openstack_keystone
Security_of_openstack_keystoneSecurity_of_openstack_keystone
Security_of_openstack_keystone
 

Similar to Kerberos, Token and Hadoop

77201924
7720192477201924
77201924IJRAT
 
77201924
7720192477201924
77201924IJRAT
 
Securing Your Resources with Short-Lived Certificates!
Securing Your Resources with Short-Lived Certificates!Securing Your Resources with Short-Lived Certificates!
Securing Your Resources with Short-Lived Certificates!All Things Open
 
IRJET- Proof of Document using Multichain and Ethereum
IRJET- Proof of Document using Multichain and EthereumIRJET- Proof of Document using Multichain and Ethereum
IRJET- Proof of Document using Multichain and EthereumIRJET Journal
 
Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)
Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)
Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)Richard Bullington-McGuire
 
Application portability with kubernetes
Application portability with kubernetesApplication portability with kubernetes
Application portability with kubernetesOleg Chunikhin
 
Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014Miguel Zuniga
 
The New Stack Container Summit Talk
The New Stack Container Summit TalkThe New Stack Container Summit Talk
The New Stack Container Summit TalkThe New Stack
 
Blockchain Based Decentralized Cloud System
Blockchain Based Decentralized Cloud SystemBlockchain Based Decentralized Cloud System
Blockchain Based Decentralized Cloud SystemDhruvdoshi25071999
 
[English]Medium Inc Company Profile
[English]Medium Inc Company Profile[English]Medium Inc Company Profile
[English]Medium Inc Company ProfileJaeKwon9
 
Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]
Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]
Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]Accumulo Summit
 
System Design SpecificationsThere are various methods of pro.docx
System Design SpecificationsThere are various methods of pro.docxSystem Design SpecificationsThere are various methods of pro.docx
System Design SpecificationsThere are various methods of pro.docxdeanmtaylor1545
 
IRJET - Confidential Image De-Duplication in Cloud Storage
IRJET - Confidential Image De-Duplication in Cloud StorageIRJET - Confidential Image De-Duplication in Cloud Storage
IRJET - Confidential Image De-Duplication in Cloud StorageIRJET Journal
 
Introduction to Blockchain and Hyperledger
Introduction to Blockchain and HyperledgerIntroduction to Blockchain and Hyperledger
Introduction to Blockchain and HyperledgerDev_Events
 
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
 The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ... The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...Josef Adersberger
 
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...QAware GmbH
 
Keystone - Openstack Identity Service
Keystone - Openstack Identity Service Keystone - Openstack Identity Service
Keystone - Openstack Identity Service Prasad Mukhedkar
 
Top open source blockchain platforms of 2018
Top open source blockchain platforms of 2018Top open source blockchain platforms of 2018
Top open source blockchain platforms of 2018Parangat Technologies
 

Similar to Kerberos, Token and Hadoop (20)

77201924
7720192477201924
77201924
 
77201924
7720192477201924
77201924
 
Securing Your Resources with Short-Lived Certificates!
Securing Your Resources with Short-Lived Certificates!Securing Your Resources with Short-Lived Certificates!
Securing Your Resources with Short-Lived Certificates!
 
IRJET- Proof of Document using Multichain and Ethereum
IRJET- Proof of Document using Multichain and EthereumIRJET- Proof of Document using Multichain and Ethereum
IRJET- Proof of Document using Multichain and Ethereum
 
Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)
Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)
Enabling Web Apps For DoD Security via PKI/CAC Enablement (Forge.Mil case study)
 
Application portability with kubernetes
Application portability with kubernetesApplication portability with kubernetes
Application portability with kubernetes
 
Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014Cloud Platform Symantec Meetup Nov 2014
Cloud Platform Symantec Meetup Nov 2014
 
The New Stack Container Summit Talk
The New Stack Container Summit TalkThe New Stack Container Summit Talk
The New Stack Container Summit Talk
 
Blockchain Based Decentralized Cloud System
Blockchain Based Decentralized Cloud SystemBlockchain Based Decentralized Cloud System
Blockchain Based Decentralized Cloud System
 
[English]Medium Inc Company Profile
[English]Medium Inc Company Profile[English]Medium Inc Company Profile
[English]Medium Inc Company Profile
 
Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]
Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]
Accumulo Summit 2015: Ambari and Accumulo: HDP 2.3 Upcoming Features [Sponsored]
 
System Design SpecificationsThere are various methods of pro.docx
System Design SpecificationsThere are various methods of pro.docxSystem Design SpecificationsThere are various methods of pro.docx
System Design SpecificationsThere are various methods of pro.docx
 
IRJET - Confidential Image De-Duplication in Cloud Storage
IRJET - Confidential Image De-Duplication in Cloud StorageIRJET - Confidential Image De-Duplication in Cloud Storage
IRJET - Confidential Image De-Duplication in Cloud Storage
 
Introduction to Blockchain and Hyperledger
Introduction to Blockchain and HyperledgerIntroduction to Blockchain and Hyperledger
Introduction to Blockchain and Hyperledger
 
Hadoop and Big Data Security
Hadoop and Big Data SecurityHadoop and Big Data Security
Hadoop and Big Data Security
 
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
 The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ... The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
 
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
 
Keystone - Openstack Identity Service
Keystone - Openstack Identity Service Keystone - Openstack Identity Service
Keystone - Openstack Identity Service
 
chaitraresume
chaitraresumechaitraresume
chaitraresume
 
Top open source blockchain platforms of 2018
Top open source blockchain platforms of 2018Top open source blockchain platforms of 2018
Top open source blockchain platforms of 2018
 

Recently uploaded

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Recently uploaded (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

Kerberos, Token and Hadoop

  • 1. Kerberos, Token and Hadoop MIT Kerberos Day Intel Big Data Technologies kai.zheng@intel.com 1
  • 2. Outline 1. Kerberos and Hadoop 2. Token and Hadoop 3. Token and Kerberos 4. Kerberos, Token and Hadoop 5. Future work 2
  • 4. 4 When Hadoop adding security  Initially no authentication at all  Kerberos or SSL/TLS?  Adding security should not impact performance much  Kerberos is used to authenticate users, GSSAPI/SASL is used between C/S, encryption on wire could be optional
  • 5.  End users to services, using password  Services to services, using service credentials/keytabs  Services to services, delegating users, using service credentials  MR tasks to services, delegating users, using delegation token Kerberos authentication 5
  • 7. 7 Deploying Kerberos Provisioning service credentials/keytabs
  • 9. Strengths  Symmetric encryption, mutual authentication  Flexible SASL QoP, authentication (privacy) by default  Command line (kinit, SSO) + Browser (SPNEGO)  Mature, available in Linux/Windows + J2SE 9
  • 10. Challenges  Hadoop ecosystem is large and still fast evolving, other authentication solutions are desired  Hadoop cluster can be large, the traffic can be huge  Services are dynamically provisioned and relocated on demand  Applications are to run in containerized environment, and can be dynamically scheduled and relocated to other nodes automatically  Different deployment environments and scenarios, with different requirements 10
  • 11.  Lagged Kerberos feature support in Java (PKINIT, S2U only added recently, etc.)  Lacking fine-grained authorization support  Lacking strong delegation support in Kerberos/Java stack  Inconvenient and limited browser access via SPNEGO, for work around to bypass Kerberos exposing internal delegation token  Encryption not set in SASL via (QoP) by default, and might involve performance impact (benchmark and optimization?)  AES 256 isn’t supported by Java by default  Just get it work, allow_weak_crypto is used;  kinit –R issue Problems 11
  • 12. Outline 1. Kerberos and Hadoop 2. Token and Hadoop 3. Token and Kerberos 4. Kerberos, Token and Hadoop 5. Future work 12
  • 13. Hadoop tokens Existing Hadoop tokens for internal authentication: delegation token, job token, block access token … 13
  • 14. TokenAuth effort Proposed token for primary/initial authentication 14
  • 15. Requirements  Allow to integrate 3rd party authentication solutions  Help enforce fine-grained authorization  Supporting OAuth 2.0 token and work flow is desired for cloud deployment 15
  • 16. Challenges  Involve great change over the ecosystem  May break existing applications built on the platform  Over complex, involving both Identity Token and Access Token with related services, the work flow is quite complex. (Reinvent Kerberos?)  Big impact for performance or security concerns We either use TLS/SSL to protect token or don’t care about it at all. The former involves performance impact, the latter suffers security consideration. 16
  • 17. Outline 1. Kerberos and Hadoop 2. Token and Hadoop 3. Token and Kerberos 4. Kerberos, Token and Hadoop 5. Future work 17
  • 18. TokenPreauth mechanism Allows user to authenticate to KDC using 3rd party tokens instead of password 18
  • 19. TokenPreauth mechanism (cont’d)  Defines required token attribute values based on JWT token, reusing existing attributes  Support Bearer Token and allows to support Holder-of-Key Token in future  Support Identity Token (or ID Token) and allows to support Access Token in future 19
  • 20. TokenPreauth mechanism (cont’d)  Client principal may exist or not during token validating and ticket issuing  kinit –X token=[Your-Token], by default ref. ~/.kerbtoken  How token being generated may be out of scope, left for token authority  Identity Token -> Ticket Granting Ticket, Access Token -> Service Ticket  Ticket lifetime derived from token SHOULD be in the time frame of the token  Ticket derived from token may be not renewable 20
  • 21. Access Token profile  Based on TokenPreauth, allow Access Token to be used to request Service Ticket directly in AS exchange  Should be useful to support OAuth 2.0 Web flow in Kerberized Resource Server with backend service 21
  • 22. Why it matters  Token and OAuth are widely used in Internet, cloud and mobile, more and more popular  It allows Kerberized systems to be supported in token’s world  Also allows Kerberized systems to integrate other authentication solutions thru token and Token Authority, without modification of existing codes.  May help Kerberos evolve in both cloud and big data platform  Make extra sense for Hadoop, supporting token across the ecosystem without performance impact 22
  • 23. How it is going  We’re collaborating with MIT to standardize  Initial drafts, under MIT team’s review  Should be submitted to KITTEN WG soon  PoC done targeting for Hadoop 23
  • 24. Outline 1. Kerberos and Hadoop 2. Token and Hadoop 3. Token and Kerberos 4. Kerberos, Token and Hadoop 5. Future work 24
  • 25. Kerberos + Token for Hadoop  Let’s combine all of these together
  • 27. PoC: Token authentication JAAS module 27
  • 28. PoC: Browser and Web support 28
  • 29.  Implement the mechanism and have it included in next MIT Kerberos release, collaborating with MIT team  Or at least, provide the plugin binary download and source codes repository for public usage and review  Make a complete token solution based on Kerberos for Hadoop Next step 29
  • 30.  The Repo: https://github.com/drankye/haox  Working on a first class Java Kerberos client library  Catch up with latest Kerberos features and fill gaps lagged by Java – PKINIT – TokenPreauth Haox project 30
  • 31. Haox-asn1  A data driven ASN-1 encoding/decoding framework  A simple example, AuthorizationData type from RFC4210 31
  • 32. Haox-asn1 (cont’d)  A data driven ASN-1 encoding/decoding framework  A simple example, AuthorizationData type from RFC4210 32
  • 33. Haox-asn1 (cont’d)  A data driven ASN-1 encoding/decoding framework  A more complex example, from X.690-0207 33
  • 34. Haox kerb-crypto  Implementing des, des3, rc4, aes, camellia encryption and corresponding checksum types  Interoperates with MIT Kerberos  Independent with Kerberos codes in JRE, but rely on JCE 34
  • 35.  ASN-1 (done)  Core spec types (done)  Crypto (done)  AS client (going)  Preauth framework (going)  PKINIT (going) Haox Status 35
  • 36. Future work  Combining all of these effort together, make a complete token solution for Hadoop  Additionally, we’d also like to make Kerberos deployment be more easily and readily even for large Hadoop clusters It’s Intel’s mission that makes Hadoop more enterprise-grade security ready  We’re also interested in evolving Kerberos for cloud platform, particularly, how Kerberized services and applications can be dynamically scheduled to nodes and bootstrap  Will investigate how Intel’s technology like TEE/TXT can help thru all of these 36
  • 37. Trusted Execution Technology (TXT)  Establishing root of trust through measurement of hardware and pre-launch software components, and utilizing the result, 1.Run your workload and data on a trusted 2.Protect your workload and data 3.Avoid compromising security in the cloud 4.Sealed and secured storage 37
  • 38. Kerberos with TXT  With the secured storage provided by TXT, 1.Protect credential cache to store TGTs for Kerberos 2.Protect token cache for Hadoop 3.Protect encryption keys for data 4.Protect key store for management
  • 39. Kerberos with TXT (cont’d)  With secured token cache and trusted execution by TXT, TokenPreauth can be deployed with host keytab/cert
  • 40. Thanks! You feedback are very welcome Please contact kai.zheng@intel.com for update. 40