SlideShare a Scribd company logo
1 of 36
Download to read offline
Developer Roadshow 2017
Mozilla PDX | March 7, 2017
Overview
Hi.
We’re Mozilla, the proudly non-profit
champions of the Internet, helping to keep it
healthy, open and accessible to all.
2
Tweet at Us!
#mozilla
#DevRoadshow
TAKE 3 MIN to Tell Us What you think!
And be entered to win sweet swag.
mzl.la/devsurvey
3
Code of Conduct
A primary goal of Mozilla's Developer Roadshow (Roadshow) is to be inclusive to the largest number of
participants, with the most varied and diverse backgrounds possible. As such, we are committed to
providing a friendly, safe and welcoming environment for all, regardless of gender, sexual
orientation, ability, age, ethnicity, socioeconomic status, and religion (or lack thereof).
This Code of Conduct outlines our expectations for all those who participate in our conference
community, as well as the consequences for unacceptable behavior.
We invite all those who participate in the Roadshow to help us create safe and positive experiences for
everyone.
Please find the full text here: https://mzl.la/devroadshowcoc
And contact Sandra Persing (sandra@mozilla.com; @sandrapersing) for any issues, questions,
concerns.
4
Major Things to Look Forward to in 2017
New Web Standards
1. WebAssembly
2. WebGL 2
3. WebVR
4. CSS Grid
5
Performance
1. Electrolysis (e10s)
2. Multiple content processes
(e10s-multi)
3. Project Quantum
(announcement)
DevTools
1. Rewriting the DevTools into
standard HTML/CSS/JS
2. Hosting the DevTools on
GitHub as individual add-ons,
allowing faster updates and
easier outside contributions
3. CSS Grid Inspector
Major Things to Look Forward to in 2017
Privacy + Security
1. The Tor Uplift
2. Strong sandboxing on all
platforms
6
Web Extensions
1. Standardizing add-on APIs
between Firefox, Chrome,
Edge, and Opera
2. Supporting the devtools.*
APIs
3. Supporting the
storage.sync API
4. New Firefox-specific APIs
for theming the browser
5. Finishing Chrome-compat
and landing more
Firefox-specific APIs
Firefox Features
1. Activity Stream graduating
from Test Pilot
2. More Test Pilot experiments
3. Container Tabs
4. (Maybe!) Eliminating the
Aurora release channel so
features can get from Nightly
to Release more quickly
Michael Van Kleeck:
Identity and Access
Management at Mozilla
Speakers
7
Identity and Access Management
Michael Van Kleeck
Mozilla Enterprise Solutions Architect
Me.
9
I am Michael Van Kleeck
I work on Enterprise Architecture
Twitter @michaelvkpdx
Major assistance provided by:
10
I am Andrew Krug
I work on Security Engineering
Twitter @andrewkrug
The Mozilla Community Garden
11
Identity and Access Management- Vision
All Mozillians (paid staff and contributors) have
convenient and appropriate access to Mozilla
services through a unified, authoritative,
integrated identity system that empowers them
to build a better Internet
12
Identity and Access Management- Summary
IAM efforts improve security and productivity of
Mozillians by streamlining IAM management
tasks while providing visibility and auditability.
IAM provides an easier and significantly safer
experience for the user and for services in need of
authentication.
13
Identity and Access Management- Sample Use Cases
As staff or community:
● I would like to be able to collaborate easily on Mozilla Google docs.
● I would like to read documentation on Mozilla wikis and help
improve it
As a developer:
● I would like to easily enable collaboration with my web app or
service.
● I would like to control who has write access to my codebase.
14
Identity and Access Management- High Level
15
Identity and Access Management- Lock screen
16
Identity and Access Management- Solution Architecture
17
IAM Terms and Technologies
➔ OAuth Open Standard for Authentication (common!)
➔ OIDC OpenID Connect (authorization layer on OAuth)
➔ SAML and WSFED Legacy Auth technologies
➔ 2FA 2-Factor Authentication (e.g., Duo, Yubikey, etc…)
➔ JWT JSON Web Tokens
➔ LDAP Lightweight Directory Access Protocol
18
Identity and Access Management- Tech Architecture
19
Programming Challenge
➔ Applications or relying parties need to talk with identity providers securely.
➔ Each authentication has unique messages associated.
➔ Those message need to be secure in transit.
20
JSON Web Token
21
Decoded
JSON Web Token
22
Encoded
What’s a digital signature?
23
Header
Payload
Secret
Digital Signatures Continued
24
Secret: Passw@rd1!
HMAC( secret, header and payload )
Signature = 0xC0FF33C0FF33
Payload + Signature
Secret: Passw@rd1!
HMAC( secret, header and payload )
Signature = 0xC0FF33C0FF33
If you did catch all that…
25
Summary :
Secure because math...
What would that look like in code?
26
#This is the payload we receive in python
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Ik1pY2hh
ZWwgVmFuIEtsZWVrIiwiYWRtaW4iOnRydWV9.puDI94cptsSD3STETIqT4MO84nA54P2VtT_i
H-mcu7I
First we have to split it apart…
27
#!/usr/bin/python
payload =
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Ik1pY2hh
ZWwgVmFuIEtsZWVrIiwiYWRtaW4iOnRydWV9.puDI94cptsSD3STETIqT4MO84nA54P2VtT_i
H-mcu7I
header = payload.split(‘.’)[0]
payload = payload.split(‘.’)[1]
signature = payload.split(‘.)[2]
Now we need to sign it…
28
1 #!/usr/bin/python
2 import hmac
3 import hashlib
4
5 payload = ( redacted for brevity )
6 secret = ByRzU2haBzT0dLwt7QZgzut4LqSPc5JW
7
8 header = payload.split(‘.’)[0]
9 payload = payload.split(‘.’)[1]
10 signature = payload.split(‘.)[2]
11
12 message = header + payload
13 digest_maker = hmac.new(secret, ‘ ’,hashlib.sha256)
14
15 this_signature = digest_maker.update(message).hexdigest()
Checking Signatures
29
1 #!/usr/bin/python
2 import hmac
3 import hashlib
** redacted for brevity **
12 message = header + payload
13 digest_maker = hmac.new(secret, ‘ ’,hashlib.sha256)
14
15 this_signature = digest_maker.update(message).hexdigest()
16
17 if this_signature == signature:
#do things like trust the payload
18 else:
19 #do things like access denied
A Defense in Depth Strategy
➔ TLS Certificates
➔ Application Security
➔ Custom Authorizers
➔ 2FA ( Duo, OTP, etc. )
30
Applicable Developer Skills
➔ Cryptography Basics
➔ String Operations
➔ Different String Encoding
31
More Resources
JSON Web Tokens: https://jwt.io/introduction/
OpenIDC Security Best Practices:
https://wiki.mozilla.org/Security/Guidelines/OpenID_Connect
OAuth, OIDC, SAML, WS-Fed Comparison (blog by Niraj Bhatt)
32
Protect the Web- Get Involved With Mozilla!
Contribute to the Mozilla Code Base!
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide
Participate In An Outreachy Project!
https://wiki.mozilla.org/Outreachy
Come work with us!
https://careers.mozilla.org/
33
Thanks!
34
Michael Van Kleeck
Twitter @michaelvkpdx
E-mail mvk@mozilla.com
Website mvk.net/officehours
Q&A
#mozilla
#DevRoadshow
on Periscope @mozilla

More Related Content

Similar to Identity and Access Management At Mozilla

Introduction to microservices Jornada Microservices
Introduction to microservices Jornada MicroservicesIntroduction to microservices Jornada Microservices
Introduction to microservices Jornada MicroservicesRoan Brasil Monteiro
 
Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...
Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...
Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...Cloud Security Alliance Lviv Chapter
 
Cloud computing, SaaS, and security
Cloud computing, SaaS, and securityCloud computing, SaaS, and security
Cloud computing, SaaS, and securityMichael Van Kleeck
 
Juarez Barbosa Junior - Microsoft - OSL19
Juarez Barbosa Junior - Microsoft - OSL19Juarez Barbosa Junior - Microsoft - OSL19
Juarez Barbosa Junior - Microsoft - OSL19marketingsyone
 
Bluzelle - A Decentralized World Database
Bluzelle - A Decentralized World DatabaseBluzelle - A Decentralized World Database
Bluzelle - A Decentralized World DatabaseBluzelle
 
The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...
The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...
The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...Juarez Junior
 
2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...
2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...
2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...Patrick Guimonet
 
An architectural approach for decentralized applications
An architectural approach for decentralized applicationsAn architectural approach for decentralized applications
An architectural approach for decentralized applicationsOWASP Indonesia Chapter
 
RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.
RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.
RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.aurablocks
 
Defrag X Keynote: Deploying and managing Global Blockchain Network
Defrag X Keynote: Deploying and managing Global Blockchain NetworkDefrag X Keynote: Deploying and managing Global Blockchain Network
Defrag X Keynote: Deploying and managing Global Blockchain NetworkDuncan Johnston-Watt
 
ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...
ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...
ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...Cyber Security Alliance
 
Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMiki Lombardi
 
Building Microservices in the cloud - Software Architecture Summit 2016
Building Microservices in the cloud - Software Architecture Summit 2016Building Microservices in the cloud - Software Architecture Summit 2016
Building Microservices in the cloud - Software Architecture Summit 2016Christian Deger
 
Intergen Smarts 9 (2005)
Intergen Smarts 9 (2005)Intergen Smarts 9 (2005)
Intergen Smarts 9 (2005)Intergen
 
Nsc42 - is the cloud secure - is easy if you do it smart ECC Conference
Nsc42 - is the cloud secure - is easy if you do it smart ECC ConferenceNsc42 - is the cloud secure - is easy if you do it smart ECC Conference
Nsc42 - is the cloud secure - is easy if you do it smart ECC ConferenceNSC42 Ltd
 
Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...
Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...
Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...Cloud Security Alliance, UK chapter
 
Nsc42-CSA AGM is the cloud secure - is easy if you do it smart
Nsc42-CSA AGM is the cloud secure - is easy if you do it smartNsc42-CSA AGM is the cloud secure - is easy if you do it smart
Nsc42-CSA AGM is the cloud secure - is easy if you do it smartNSC42 Ltd
 
State of microservices 2020 by tsh
State of microservices 2020 by tshState of microservices 2020 by tsh
State of microservices 2020 by tshmustafa sarac
 

Similar to Identity and Access Management At Mozilla (20)

Introduction to microservices Jornada Microservices
Introduction to microservices Jornada MicroservicesIntroduction to microservices Jornada Microservices
Introduction to microservices Jornada Microservices
 
Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...
Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...
Iurii Garasym - Cloud Security Alliance Now in Ukraine. Mission, Opportunitie...
 
Cloud computing, SaaS, and security
Cloud computing, SaaS, and securityCloud computing, SaaS, and security
Cloud computing, SaaS, and security
 
Juarez Barbosa Junior - Microsoft - OSL19
Juarez Barbosa Junior - Microsoft - OSL19Juarez Barbosa Junior - Microsoft - OSL19
Juarez Barbosa Junior - Microsoft - OSL19
 
Bluzelle - A Decentralized World Database
Bluzelle - A Decentralized World DatabaseBluzelle - A Decentralized World Database
Bluzelle - A Decentralized World Database
 
The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...
The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...
The Trinity in Exponential Technologies: Open Source, Blockchain and Microsof...
 
2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...
2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...
2020-05-28 Microsoft 365 Virtual Marathon - Mobility with Microsoft 365 from ...
 
An architectural approach for decentralized applications
An architectural approach for decentralized applicationsAn architectural approach for decentralized applications
An architectural approach for decentralized applications
 
RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.
RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.
RapidBlocks, a platform vision for accelerating enterprise blockchain adoption.
 
Defrag X Keynote: Deploying and managing Global Blockchain Network
Defrag X Keynote: Deploying and managing Global Blockchain NetworkDefrag X Keynote: Deploying and managing Global Blockchain Network
Defrag X Keynote: Deploying and managing Global Blockchain Network
 
Defrag x blockchain keynote
Defrag x blockchain keynoteDefrag x blockchain keynote
Defrag x blockchain keynote
 
ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...
ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...
ASFWS 2013 - Cryptocat: récents défis en faisant la cryptographie plus facile...
 
Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - Plansoft
 
Building Microservices in the cloud - Software Architecture Summit 2016
Building Microservices in the cloud - Software Architecture Summit 2016Building Microservices in the cloud - Software Architecture Summit 2016
Building Microservices in the cloud - Software Architecture Summit 2016
 
Intergen Smarts 9 (2005)
Intergen Smarts 9 (2005)Intergen Smarts 9 (2005)
Intergen Smarts 9 (2005)
 
Hyperledger: Advancing Blockchain Technology for Business
Hyperledger: Advancing Blockchain Technology for BusinessHyperledger: Advancing Blockchain Technology for Business
Hyperledger: Advancing Blockchain Technology for Business
 
Nsc42 - is the cloud secure - is easy if you do it smart ECC Conference
Nsc42 - is the cloud secure - is easy if you do it smart ECC ConferenceNsc42 - is the cloud secure - is easy if you do it smart ECC Conference
Nsc42 - is the cloud secure - is easy if you do it smart ECC Conference
 
Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...
Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...
Csa UK agm 2019 - Nsc42 - is the cloud secure - is easy if you do it smart Fr...
 
Nsc42-CSA AGM is the cloud secure - is easy if you do it smart
Nsc42-CSA AGM is the cloud secure - is easy if you do it smartNsc42-CSA AGM is the cloud secure - is easy if you do it smart
Nsc42-CSA AGM is the cloud secure - is easy if you do it smart
 
State of microservices 2020 by tsh
State of microservices 2020 by tshState of microservices 2020 by tsh
State of microservices 2020 by tsh
 

Recently uploaded

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfme23b1001
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 

Recently uploaded (20)

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdf
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 

Identity and Access Management At Mozilla

  • 1. Developer Roadshow 2017 Mozilla PDX | March 7, 2017
  • 2. Overview Hi. We’re Mozilla, the proudly non-profit champions of the Internet, helping to keep it healthy, open and accessible to all. 2
  • 3. Tweet at Us! #mozilla #DevRoadshow TAKE 3 MIN to Tell Us What you think! And be entered to win sweet swag. mzl.la/devsurvey 3
  • 4. Code of Conduct A primary goal of Mozilla's Developer Roadshow (Roadshow) is to be inclusive to the largest number of participants, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, age, ethnicity, socioeconomic status, and religion (or lack thereof). This Code of Conduct outlines our expectations for all those who participate in our conference community, as well as the consequences for unacceptable behavior. We invite all those who participate in the Roadshow to help us create safe and positive experiences for everyone. Please find the full text here: https://mzl.la/devroadshowcoc And contact Sandra Persing (sandra@mozilla.com; @sandrapersing) for any issues, questions, concerns. 4
  • 5. Major Things to Look Forward to in 2017 New Web Standards 1. WebAssembly 2. WebGL 2 3. WebVR 4. CSS Grid 5 Performance 1. Electrolysis (e10s) 2. Multiple content processes (e10s-multi) 3. Project Quantum (announcement) DevTools 1. Rewriting the DevTools into standard HTML/CSS/JS 2. Hosting the DevTools on GitHub as individual add-ons, allowing faster updates and easier outside contributions 3. CSS Grid Inspector
  • 6. Major Things to Look Forward to in 2017 Privacy + Security 1. The Tor Uplift 2. Strong sandboxing on all platforms 6 Web Extensions 1. Standardizing add-on APIs between Firefox, Chrome, Edge, and Opera 2. Supporting the devtools.* APIs 3. Supporting the storage.sync API 4. New Firefox-specific APIs for theming the browser 5. Finishing Chrome-compat and landing more Firefox-specific APIs Firefox Features 1. Activity Stream graduating from Test Pilot 2. More Test Pilot experiments 3. Container Tabs 4. (Maybe!) Eliminating the Aurora release channel so features can get from Nightly to Release more quickly
  • 7. Michael Van Kleeck: Identity and Access Management at Mozilla Speakers 7
  • 8. Identity and Access Management Michael Van Kleeck Mozilla Enterprise Solutions Architect
  • 9. Me. 9 I am Michael Van Kleeck I work on Enterprise Architecture Twitter @michaelvkpdx
  • 10. Major assistance provided by: 10 I am Andrew Krug I work on Security Engineering Twitter @andrewkrug
  • 12. Identity and Access Management- Vision All Mozillians (paid staff and contributors) have convenient and appropriate access to Mozilla services through a unified, authoritative, integrated identity system that empowers them to build a better Internet 12
  • 13. Identity and Access Management- Summary IAM efforts improve security and productivity of Mozillians by streamlining IAM management tasks while providing visibility and auditability. IAM provides an easier and significantly safer experience for the user and for services in need of authentication. 13
  • 14. Identity and Access Management- Sample Use Cases As staff or community: ● I would like to be able to collaborate easily on Mozilla Google docs. ● I would like to read documentation on Mozilla wikis and help improve it As a developer: ● I would like to easily enable collaboration with my web app or service. ● I would like to control who has write access to my codebase. 14
  • 15. Identity and Access Management- High Level 15
  • 16. Identity and Access Management- Lock screen 16
  • 17. Identity and Access Management- Solution Architecture 17
  • 18. IAM Terms and Technologies ➔ OAuth Open Standard for Authentication (common!) ➔ OIDC OpenID Connect (authorization layer on OAuth) ➔ SAML and WSFED Legacy Auth technologies ➔ 2FA 2-Factor Authentication (e.g., Duo, Yubikey, etc…) ➔ JWT JSON Web Tokens ➔ LDAP Lightweight Directory Access Protocol 18
  • 19. Identity and Access Management- Tech Architecture 19
  • 20. Programming Challenge ➔ Applications or relying parties need to talk with identity providers securely. ➔ Each authentication has unique messages associated. ➔ Those message need to be secure in transit. 20
  • 23. What’s a digital signature? 23 Header Payload Secret
  • 24. Digital Signatures Continued 24 Secret: Passw@rd1! HMAC( secret, header and payload ) Signature = 0xC0FF33C0FF33 Payload + Signature Secret: Passw@rd1! HMAC( secret, header and payload ) Signature = 0xC0FF33C0FF33
  • 25. If you did catch all that… 25 Summary : Secure because math...
  • 26. What would that look like in code? 26 #This is the payload we receive in python eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Ik1pY2hh ZWwgVmFuIEtsZWVrIiwiYWRtaW4iOnRydWV9.puDI94cptsSD3STETIqT4MO84nA54P2VtT_i H-mcu7I
  • 27. First we have to split it apart… 27 #!/usr/bin/python payload = eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6Ik1pY2hh ZWwgVmFuIEtsZWVrIiwiYWRtaW4iOnRydWV9.puDI94cptsSD3STETIqT4MO84nA54P2VtT_i H-mcu7I header = payload.split(‘.’)[0] payload = payload.split(‘.’)[1] signature = payload.split(‘.)[2]
  • 28. Now we need to sign it… 28 1 #!/usr/bin/python 2 import hmac 3 import hashlib 4 5 payload = ( redacted for brevity ) 6 secret = ByRzU2haBzT0dLwt7QZgzut4LqSPc5JW 7 8 header = payload.split(‘.’)[0] 9 payload = payload.split(‘.’)[1] 10 signature = payload.split(‘.)[2] 11 12 message = header + payload 13 digest_maker = hmac.new(secret, ‘ ’,hashlib.sha256) 14 15 this_signature = digest_maker.update(message).hexdigest()
  • 29. Checking Signatures 29 1 #!/usr/bin/python 2 import hmac 3 import hashlib ** redacted for brevity ** 12 message = header + payload 13 digest_maker = hmac.new(secret, ‘ ’,hashlib.sha256) 14 15 this_signature = digest_maker.update(message).hexdigest() 16 17 if this_signature == signature: #do things like trust the payload 18 else: 19 #do things like access denied
  • 30. A Defense in Depth Strategy ➔ TLS Certificates ➔ Application Security ➔ Custom Authorizers ➔ 2FA ( Duo, OTP, etc. ) 30
  • 31. Applicable Developer Skills ➔ Cryptography Basics ➔ String Operations ➔ Different String Encoding 31
  • 32. More Resources JSON Web Tokens: https://jwt.io/introduction/ OpenIDC Security Best Practices: https://wiki.mozilla.org/Security/Guidelines/OpenID_Connect OAuth, OIDC, SAML, WS-Fed Comparison (blog by Niraj Bhatt) 32
  • 33. Protect the Web- Get Involved With Mozilla! Contribute to the Mozilla Code Base! https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide Participate In An Outreachy Project! https://wiki.mozilla.org/Outreachy Come work with us! https://careers.mozilla.org/ 33
  • 34. Thanks! 34 Michael Van Kleeck Twitter @michaelvkpdx E-mail mvk@mozilla.com Website mvk.net/officehours
  • 35.