SlideShare a Scribd company logo
OAuth & OpenID Connect in Action
Chuck Mortimore
VP, Product Management
Salesforce Identity
@cmort
a quick demo client
CIS14: OAuth and OpenID Connect in Action
the world’s simplest client
1) Register an App
2) Get your Metadata
3) Create (initialize) your Client
4) Use your Tokens
1) Register an App
2) Get your Metadata
https://login.salesforce.com/.well-known/openid-configuration
2) Get your Metadata
{
"issuer": "https://login.salesforce.com",
"authorization_endpoint": "https://login.salesforce.com/services/oauth2/authorize",
"token_endpoint": "https://login.salesforce.com/services/oauth2/token",
"revocation_endpoint": "https://login.salesforce.com/services/oauth2/revoke",
"userinfo_endpoint": "https://login.salesforce.com/services/oauth2/userinfo",
"jwks_uri": "https://login.salesforce.com/id/keys",
"scopes_supported": ["id", "api", "web", "full", "chatter_api", "visualforce", "refresh_token", "openid"],
"response_types_supported": ["code", "token", "token id_token"],
"subject_types_supported": ["public"],
"id_token_signing_alg_values_supported": ["RS256"],
"display_values_supported": ["page", "popup", "touch"],
"token_endpoint_auth_methods_supported": ["client_secret_post", "private_key_jwt"]
}
3) Create your Client
https://login.salesforce.com/services/oauth2/authorize?
response_type=code&redirect_uri=https%3A%2F
%2Flocalhost&client_id=…
curl -H 'Content-Type: application/x-www-form-urlencoded' -d
"client_id=...&client_secret=...&redirect_uri=https%3A%2F
%2Flocalhost&grant_type=authorization_code&code=..." https://
login.salesforce.com/services/oauth2/token
…and validate your id_token
4) Use your access_token
curl -H "Authorization: Bearer ..." https://login.salesforce.com/
services/oauth2/userprofile
CIS14: OAuth and OpenID Connect in Action
so what can we do with
all this plumbing?
social sign-on
1) Register an App
2) Get your Metadata
https://accounts.google.com/.well-known/openid-configuration
3) Initialize your client software
4) Just-in-Time Provisioning
faster, simpler, better federation
1) Register an App
2) Get your Metadata
https://gold.pinglabs.net:9031/.well-known/openid-configuration
3) Initialize your client software
4) Map Users
5) Access APIs!
enterprise mobile apps
Let’s build this App
Refresh Tokens provide “SSO”
Let’s Layer in Federation
Let’s add Enterprise Policies
How about Two Factor Authentication
Bonus: Custom Claims
CIS14: OAuth and OpenID Connect in Action

More Related Content

PDF
OAuth2 and Spring Security
PDF
OAuth2 and LinkedIn
PDF
Pocket Authentication with OAuth on Firefox OS
PPTX
A simple PHP LinkedIn OAuth 2.0 example
PPTX
Social Gold in-Flash Webinar Jan 2010
PPTX
UC2013 Speed Geeking: Intro to OAuth2
PPT
Linkedin & OAuth
PDF
Spring security oauth2
OAuth2 and Spring Security
OAuth2 and LinkedIn
Pocket Authentication with OAuth on Firefox OS
A simple PHP LinkedIn OAuth 2.0 example
Social Gold in-Flash Webinar Jan 2010
UC2013 Speed Geeking: Intro to OAuth2
Linkedin & OAuth
Spring security oauth2

Similar to CIS14: OAuth and OpenID Connect in Action (20)

PDF
Digging Deeper into Desktop and Mobile App Security
PDF
Créer une App Microsoft Teams : REX - Replay Microsoft Experiences 2018
PDF
iMasters Intercon 2016 - Identity within Microservices
PDF
InterCon 2016 - Segurança de identidade digital levando em consideração uma a...
PPTX
Esquema de pasos de ejecución IdM
PDF
OAuth 2.0
PDF
A Detailed Guide to Securing React applications with Keycloak - WalkingTree ...
PDF
OAuth 2.0 – A standard is coming of age by Uwe Friedrichsen
PPTX
Inbound rest web service
PPTX
OAuth with Salesforce - Demystified
PPT
UserCentric Identity based Service Invocation
PDF
How we eased out security journey with OAuth (Goodbye Kerberos!) | Paul Makka...
PDF
Nk API - examples
PDF
SoftLayer API 12032015
PDF
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
PDF
Mobile Authentication - Onboarding, best practices & anti-patterns
PPTX
Using ArcGIS with OAuth 2.0 - Esri DevSummit Dubai 2013
PDF
OAuth In The Real World : 10 actual implementations you can't guess
PDF
Integrating WordPress With Web APIs
PPTX
How to Use Stormpath in angular js
Digging Deeper into Desktop and Mobile App Security
Créer une App Microsoft Teams : REX - Replay Microsoft Experiences 2018
iMasters Intercon 2016 - Identity within Microservices
InterCon 2016 - Segurança de identidade digital levando em consideração uma a...
Esquema de pasos de ejecución IdM
OAuth 2.0
A Detailed Guide to Securing React applications with Keycloak - WalkingTree ...
OAuth 2.0 – A standard is coming of age by Uwe Friedrichsen
Inbound rest web service
OAuth with Salesforce - Demystified
UserCentric Identity based Service Invocation
How we eased out security journey with OAuth (Goodbye Kerberos!) | Paul Makka...
Nk API - examples
SoftLayer API 12032015
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
Mobile Authentication - Onboarding, best practices & anti-patterns
Using ArcGIS with OAuth 2.0 - Esri DevSummit Dubai 2013
OAuth In The Real World : 10 actual implementations you can't guess
Integrating WordPress With Web APIs
How to Use Stormpath in angular js
Ad

More from CloudIDSummit (20)

PPTX
CIS 2016 Content Highlights
PPTX
Top 6 Reasons You Should Attend Cloud Identity Summit 2016
PDF
CIS 2015 Security Without Borders: Taming the Cloud and Mobile Frontier - And...
PDF
Mobile security, identity & authentication reasons for optimism 20150607 v2
PDF
CIS 2015 Mobile Security, Identity & Authentication: Reasons for Optimism - R...
PDF
CIS 2015 Virtual Identity: The Vision, Challenges and Experiences in Driving ...
PDF
CIS 2015 Deploying Strong Authentication to a Global Enterprise: A Comedy in ...
PDF
CIS 2015 Without Great Security, Digital Identity is Not Worth the Electrons ...
PDF
CIS 2015 Mergers & Acquisitions in a Cloud Enabled World - Brian Puhl
PDF
CIS 2015 IoT and IDM in your Mobile Enterprise - Brian Katz
PDF
CIS 2015 Practical Deployments Enterprise Cloud Access Management Platform - ...
PDF
CIS 2015 What I Learned From Pitching IAM To My CIO - Steve Tout
PDF
CIS 2015 How to secure the Internet of Things? Hannes Tschofenig
PDF
CIS 2015 The IDaaS Dating Game - Sean Deuby
PDF
CIS 2015 SSO for Mobile and Web Apps Ashish Jain
PDF
The Industrial Internet, the Identity of Everything and the Industrial Enterp...
PDF
CIS 2015 SAML-IN / SAML-OUT - Scott Tomilson & John Dasilva
PDF
CIS 2015 Session Management at Scale - Scott Tomilson & Jamshid Khosravian
PDF
CIS 2015 So you want to SSO … Scott Tomilson & John Dasilva
PDF
CIS 2015 Identity Relationship Management in the Internet of Things
CIS 2016 Content Highlights
Top 6 Reasons You Should Attend Cloud Identity Summit 2016
CIS 2015 Security Without Borders: Taming the Cloud and Mobile Frontier - And...
Mobile security, identity & authentication reasons for optimism 20150607 v2
CIS 2015 Mobile Security, Identity & Authentication: Reasons for Optimism - R...
CIS 2015 Virtual Identity: The Vision, Challenges and Experiences in Driving ...
CIS 2015 Deploying Strong Authentication to a Global Enterprise: A Comedy in ...
CIS 2015 Without Great Security, Digital Identity is Not Worth the Electrons ...
CIS 2015 Mergers & Acquisitions in a Cloud Enabled World - Brian Puhl
CIS 2015 IoT and IDM in your Mobile Enterprise - Brian Katz
CIS 2015 Practical Deployments Enterprise Cloud Access Management Platform - ...
CIS 2015 What I Learned From Pitching IAM To My CIO - Steve Tout
CIS 2015 How to secure the Internet of Things? Hannes Tschofenig
CIS 2015 The IDaaS Dating Game - Sean Deuby
CIS 2015 SSO for Mobile and Web Apps Ashish Jain
The Industrial Internet, the Identity of Everything and the Industrial Enterp...
CIS 2015 SAML-IN / SAML-OUT - Scott Tomilson & John Dasilva
CIS 2015 Session Management at Scale - Scott Tomilson & Jamshid Khosravian
CIS 2015 So you want to SSO … Scott Tomilson & John Dasilva
CIS 2015 Identity Relationship Management in the Internet of Things
Ad

Recently uploaded (20)

PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
cuic standard and advanced reporting.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
A Presentation on Artificial Intelligence
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Empathic Computing: Creating Shared Understanding
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
Big Data Technologies - Introduction.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
A comparative analysis of optical character recognition models for extracting...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Unlocking AI with Model Context Protocol (MCP)
MIND Revenue Release Quarter 2 2025 Press Release
cuic standard and advanced reporting.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
20250228 LYD VKU AI Blended-Learning.pptx
Chapter 3 Spatial Domain Image Processing.pdf
A Presentation on Artificial Intelligence
The AUB Centre for AI in Media Proposal.docx
Machine learning based COVID-19 study performance prediction
Network Security Unit 5.pdf for BCA BBA.
Empathic Computing: Creating Shared Understanding
MYSQL Presentation for SQL database connectivity
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Big Data Technologies - Introduction.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
gpt5_lecture_notes_comprehensive_20250812015547.pdf

CIS14: OAuth and OpenID Connect in Action

  • 1. OAuth & OpenID Connect in Action Chuck Mortimore VP, Product Management Salesforce Identity @cmort
  • 2. a quick demo client
  • 5. 1) Register an App 2) Get your Metadata 3) Create (initialize) your Client 4) Use your Tokens
  • 7. 2) Get your Metadata https://login.salesforce.com/.well-known/openid-configuration
  • 8. 2) Get your Metadata { "issuer": "https://login.salesforce.com", "authorization_endpoint": "https://login.salesforce.com/services/oauth2/authorize", "token_endpoint": "https://login.salesforce.com/services/oauth2/token", "revocation_endpoint": "https://login.salesforce.com/services/oauth2/revoke", "userinfo_endpoint": "https://login.salesforce.com/services/oauth2/userinfo", "jwks_uri": "https://login.salesforce.com/id/keys", "scopes_supported": ["id", "api", "web", "full", "chatter_api", "visualforce", "refresh_token", "openid"], "response_types_supported": ["code", "token", "token id_token"], "subject_types_supported": ["public"], "id_token_signing_alg_values_supported": ["RS256"], "display_values_supported": ["page", "popup", "touch"], "token_endpoint_auth_methods_supported": ["client_secret_post", "private_key_jwt"] }
  • 9. 3) Create your Client https://login.salesforce.com/services/oauth2/authorize? response_type=code&redirect_uri=https%3A%2F %2Flocalhost&client_id=… curl -H 'Content-Type: application/x-www-form-urlencoded' -d "client_id=...&client_secret=...&redirect_uri=https%3A%2F %2Flocalhost&grant_type=authorization_code&code=..." https:// login.salesforce.com/services/oauth2/token …and validate your id_token
  • 10. 4) Use your access_token curl -H "Authorization: Bearer ..." https://login.salesforce.com/ services/oauth2/userprofile
  • 12. so what can we do with all this plumbing?
  • 15. 2) Get your Metadata https://accounts.google.com/.well-known/openid-configuration
  • 16. 3) Initialize your client software
  • 20. 2) Get your Metadata https://gold.pinglabs.net:9031/.well-known/openid-configuration
  • 21. 3) Initialize your client software
  • 27. Let’s Layer in Federation
  • 29. How about Two Factor Authentication