SlideShare une entreprise Scribd logo
1  sur  37
Single Sign On 
SSO & ID Management 
for 
Web and Mobile Applications 
Single Sign On and ID Management 
Presenter: Manish Harsh 
• Program Manager for Developer Marketing Platforms of NVIDIA (Visual Computing company) 
• Advisor in Halosys (Enterprise Mobility Solutions and Framework company)
Single Sign On and ID Management 
 Plan B ? 
 Definition(s) 
 Types of SSO 
 Story 
 Why Identity Management 
 Commandments for IDM 
 Devil is in the details 
 Strategy 
 Methodology and Monitoring 
 Deployment Plan 
 SSO Drupal Modules and Techniques 
 References and Information 
 Contact Info 
Agenda 
Start
Plan B ? 
“Having a Plan B 
only 
References 
References 
distracts you from Plan A” 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Definition of SSO 
Single sign-on (SSO) is a property of access control to 
multiple related, but independent software systems. 
Single Sign On and ID Management
OR 
Users provide credentials 
only once per session, 
and then gain access to 
multiple applications 
without having to sign in 
again during that session. 
Users provide same 
credentials for multiple 
applications; they might have 
to login multiple times, but 
always using the same 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
credentials.
Enterprise SSO Scenarios 
1. Corporate Login to Cloud Application 
2. Cloud Login to Internal Application 
3. Corporate Login to Internal Application 
4. Using Identity as a Service (IdaaS) Hub 
5. Corporate Login to Partner Application 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Scenario 1: Corporate Login to Cloud Application 
• 
Corporation hosts the Federation Server that 
enables SSO with Cloud applications based on 
standard protocols like SAML or OAuth. 
Most commonly supported SSO scenario 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
STS
Scenario 2: Cloud Login to Internal Application 
A typical example of this is a user logging 
into a corporate SharePoint web site with 
their Facebook account. 
• A familiar, consumer-friendly model like 
this is easy to use and decreases 
support costs associated with a large 
consumer population. 
STS 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Scenario 3: Corporate Login to Internal Application 
This is to decouple authentication/authorization from 
within each application and to leverage centralized 
services for these functions. 
In this case, internal applications would be 
developed as “relying parties” that trust an internal 
corporate identity management system for 
authentication/ authorization decisions. 
This scenario is often required by organizations as they acquire other companies but cannot create trusts between their Active Directory 
domains due to legal limitations imposed by differing localities, time constraints, or other internal policies. 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
STS
Scenario 4: Identity as a Service (IdaaS) Hub 
• Users log in with an identity maintained by a 
Cloud Identity as a Service (IdaaS) Provider 
and can then access multiple Cloud hosted 
SaaS applications or corporate hosted 
partner applications. 
• A central shared Identity Provider functions 
as a hub of authentication, allowing 
federation trusts to be established with all 
major Identity Providers using industry-standard 
STS 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
protocols like SAML, WS-Federation, 
WS-Trust, OpenID, and OAuth. 
This scenario is more common in specific industries such as healthcare where hospitals and doctor’s practices partner with insurance 
companies and health care plans. 
STS 
IDP
SSO for user(s) across multiple applications (Web and Mobile) 
based on their role and permission. 
Single Sign On and ID Management 
Current scenario: 
Several applications built on different technologies like Drupal 6, Drupal 7 custom PHP, Ruby on 
Rails and Microsoft technologies. 
Note: Few of the sites also have native mobile apps. 
Total Users: ~1 Million 
Story
Challenge (Or Risk) 
Security: If a user's account or password information is compromised, an 
intruder could have extensive and easier access to far more resources. 
Cost: SSO implementations can be expensive in two aspects - the cost 
to purchase and the manpower to deploy. 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
SSO Between Drupal & Non-Drupal Sites 
1. Identity Management 
2. Custom Authentication 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
ID Management Systems with Drupal Module 
IDM Drupal Modules 
Janrain https://www.drupal.org/project/janrain_capture 
Gigya https://www.drupal.org/project/gigya 
Onelogin https://www.drupal.org/project/onelogin 
More Exploring… 
Single Sign On and ID Management
Identity Management 
Single Sign On and ID Management
Identity + Management 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Identity + Management 
Authentication Verification that an entity is who/what it claims to be using a password. 
Authorization Managing authorization information that defines what operations an entity can 
perform in the context of a specific application. 
Roles Roles are groups of operations and/or other roles. Users are granted roles 
often related to a particular job or job function. 
Delegation Delegation allows local administrators or supervisors to perform system 
modifications without a global administrator or for one user to allow another to 
perform actions on their behalf. 
More.. Features like analytics, widgets, notifications, alerts etc. 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Terms for SSO and IDM 
Directory services STS (Security Token System) 
Service Providers Workflows 
Identity Providers OpenID 
Web Services WS-Security 
Access Control WS-Trust 
Digital Identities SAML 2.0 
Password Managers OAuth 
Security Tokens RBAC (Role Based Access Control) 
Single Sign On and ID Management
Commandments for IDM 
Single Sign On and ID Management 
Determine and declare 
Authentication Policies 
• Strength policies 
• Password management policies 
• Contractual service level agreement 
policies 
• Change management plan
Strategy 
Determine the global session time outs 
and the device(client side) inactivity 
timeouts. 
User Experience and Security Protocol 
Identify specific applications where due 
to enterprise risk the timeouts need to be 
lower than your enterprise values. 
Understand your system 
Design a strategy for handling these 
timeouts. 
User Experience 
Single Sign On and ID Management
Methodology and Monitoring 
Determine the action 
• Failed authentication 
• Post-authentication 
• Authorization 
Technical Methodology and User Experience 
Transaction Authentication 
Note: Users should be notified in advance that their 
computer hardware and IP addresses will be monitored 
as well as their usage patterns. 
Transaction authentication is extra monitoring 
in addition to the successful use of user id and 
password. 
• IP address 
• Geo location 
• Client device (Mobile/computer) 
• Login pattern (Time, duration etc.) 
Single Sign On and ID Management
Deployment Plan 
Determine the number of environments you will use for SSO). • Development 
Single Sign On and ID Management 
• Test 
• QA 
• Pre-production 
• Production 
Determine how applications will be quickly moved between 
environments? 
Integration Scripts and tools 
Determine the peak SSO loads Scalability parameter
Custom Authentication 
1. External Authentication Script 
2. Session Check Script 
3. Ticket Generation Script 
Single Sign On and ID Management
Architecture for Custom Authentication 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
Master Site 
User DB for 
Master Site 
Subsite 1 
User 
Subsite 2 ……………………….. Subsite n 
Attempt to log in site 1
External Authentication Script 
• User attempts to login to any of the site configured for SSO by providing 
username and password. 
• The username and password are verified against a common Database 
(preferably the Master Drupal DB). 
• Once the script validates the user with the Master DB the user is logged in 
Single Sign On and ID Management 
to the requested Site. 
• Appropriate permission parameters are then checked by the script and the 
user is granted request to the specific resources.
Session Check Script 
• User requests access to any of the resources on the connected sites. 
• The script checks if the user is logged in to the master site. 
• If the user is logged in on the master site the user is succesfully logged in. 
• If the user is not logged in on the master site: 
The user is taken to the login page for the master site. 
Once the user is logs in on the master site the script check is done again and the user is 
logged in on the other connected sites. 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Ticket Generation Script 
• User requests access to any of the resources on the connected sites. 
• The Master DB is requested to generate ticket for the requesting access. 
• The user is validated and a session ticket is generated by the ticket generation 
server which is saved as a session parameter in the user’s browser. 
• The connected sites then use this ticket to verify the login for the user with the ticket 
generation server for the validity of the ticket. 
• Login request providing valid tickets are logged in automatically by the script. 
• The generated tickets are session specific and expire after the configured time. 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Popular Drupal SSO Modules / Techniques… 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
CAS 
In its most simple use, CAS authenticates users and sends the user to the requested application with a ticket. The 
application is then responsible for authenticating the ticket (behind the scenes, with a tool like cURL) and automatically 
logging the user in if the ticket is valid. 
CAS can also proxy single sign-on. 
URL: https://drupal.org/project/cas 
Usage Statistics: https://drupal.org/project/usage/cas
Popular Drupal SSO Modules / Techniques… 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
OAuth Connector 
It makes it possible to connect and sign in a Drupal user with accounts on most third party sites with OAuth APIs. It provides a 
UI for adding and editing specifications of OAuth APIs that the users should be able to connect to. It also provides 
exportability of those specifications. 
Is an implementation of the Connector module. 
URL: https://drupal.org/project/oauthconnector 
Usage Statistics: https://drupal.org/project/usage/oauthconnector
Popular Drupal SSO Modules / Techniques… 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
LDAP SSO 
The LDAP Single Sign-On module provides an administrator with the ability to configure a Drupal site to use either NTLMSSP (e.g. 
seamless automatic login using LDAP / Active Directory credentials passed automatically by supported and properly configured 
browsers) or basic digest authentication as a fallback to authenticate Drupal users. The net effect is that either automatically, or 
by visiting a link, a user is authenticated and logged into a Drupal site without requiring the user to manually enter credentials on 
suitably configured installations. 
URL: https://drupal.org/project/ldap_sso 
Usage Statistics: https://drupal.org/project/usage/ldap_sso
Popular Drupal SSO Modules / Techniques… 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
Bakery SSO 
Bakery provides a "single sign-on" feature for Drupal based sites that are on the 
same second-level domain (i.e. example.com, subsite.example.com, 
subsite2.example.com). It could also provide support for any other website that 
implements the same web cookie, xmlrpc, and POST methods. 
URL: https://drupal.org/project/bakery 
Usage Statistics: https://drupal.org/project/usage/bakery 
Also refer: http://drupalwatchdog.com/volume-2/issue-2/drupal-and-secure-single-sign
Popular Drupal SSO Modules / Techniques… 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
Shibboleth Authentication 
Provides user authentication with Shibboleth (both v1.3 and v2.0) as well as 
some authorization features (automatic role assignment based on 
Shibboleth attributes). 
More Info: https://wiki.shibboleth.net/confluence/display/SHIB2/FlowsAndConfig 
URL: https://drupal.org/project/shib_auth 
Usage Statistics: https://drupal.org/project/usage/shib_auth
Popular Drupal SSO Modules / Techniques… 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
Account Sync 
The account_sync module allows you to synchronize drupal user account data across 
multiple Drupal sites. 
It currently supports basic account information as well as the drupal core profile 
module. This module uses XMLRPC to transmit data between sites when updates are 
made so there is no need to have your sites running on the same database, server, or 
on the same subdomain. 
URL: https://drupal.org/project/account_sync 
Usage Statistics: https://drupal.org/project/usage/account_sync
Popular Drupal SSO Modules / Techniques… 
OpenID Single Sign On Relying Party 
This module provides a simple single sign on solution based on OpenID and native in 
Drupal. It is the relying party counterpart for a server based on OpenID, related to 
OpenID Single Sign On Provider. You can set up a central provider (which ideally 
is another instance of Drupal) and a lot of another (Drupal) websites (so called 
relying parties). This way the users can login to every single relying party website 
using a centralized login provider where authentication is happening. 
URL: https://drupal.org/project/openid_sso_relying 
Usage Statistics: https://drupal.org/project/usage/openid_sso_relying 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
Popular Drupal SSO Modules / Techniques… 
Google Apps Authentication 
Google Apps provides a single sign on API that enables people to write 
applications that do user authentication against a local database, and then tell 
google that the user is authenticated. This modules implements the API in 
drupal. In other words, once properly setup, this module lets Google Apps 
instances authenticate against your drupal user database. 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
URL : https://drupal.org/project/googleauth 
Usage Statistics :https://drupal.org/project/usage/googleauth
http://merbist.com/2012/04/04/building-and-implementing-a-single-sign-on-solution/ 
http://www.authenticationworld.com/Single-Sign-On-Authentication/101ThingsToKnowAboutSingleSignOn.pdf 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent 
http://en.wikipedia.org/wiki/Single_sign-on 
https://groups.drupal.org/node/182004 
http://drupal.stackexchange.com/questions/1758/how-drupal-org-single-sign-on-works 
http://mauriziostorani.wordpress.com/2008/07/21/single-sign-on-sso-concepts-methods-and-frameworks/ 
http://scn.sap.com/thread/733802 
References
1. Twitter handle: @manishharsh 
Thanks  
2. LinkedIn Profile: https://linkedin.com/in/manishharsh 
3. SVDUG (Silicon Valley Drupal User Group): https://meetup.com/drupalgroup 
4. Email: manishharsh@gmail.com 
SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent

Contenu connexe

Tendances

Tendances (20)

Sonarlint
SonarlintSonarlint
Sonarlint
 
사업소개서 Ab180(공개버전)
사업소개서 Ab180(공개버전)사업소개서 Ab180(공개버전)
사업소개서 Ab180(공개버전)
 
Introduction to SAML & OIDC
Introduction to SAML & OIDCIntroduction to SAML & OIDC
Introduction to SAML & OIDC
 
WebdriverIO: the Swiss Army Knife of testing
WebdriverIO: the Swiss Army Knife of testingWebdriverIO: the Swiss Army Knife of testing
WebdriverIO: the Swiss Army Knife of testing
 
Security DevOps - Staying secure in agile projects // OWASP AppSecEU 2015 - A...
Security DevOps - Staying secure in agile projects // OWASP AppSecEU 2015 - A...Security DevOps - Staying secure in agile projects // OWASP AppSecEU 2015 - A...
Security DevOps - Staying secure in agile projects // OWASP AppSecEU 2015 - A...
 
OAuth & OpenID Connect Deep Dive
OAuth & OpenID Connect Deep DiveOAuth & OpenID Connect Deep Dive
OAuth & OpenID Connect Deep Dive
 
Angular vs react
Angular vs reactAngular vs react
Angular vs react
 
iOS Application Security
iOS Application SecurityiOS Application Security
iOS Application Security
 
Selenium IDE
Selenium IDESelenium IDE
Selenium IDE
 
OAuth
OAuthOAuth
OAuth
 
SINGLE SIGN-ON
SINGLE SIGN-ONSINGLE SIGN-ON
SINGLE SIGN-ON
 
Various Types of OpenSSL Commands and Keytool
Various Types of OpenSSL Commands and KeytoolVarious Types of OpenSSL Commands and Keytool
Various Types of OpenSSL Commands and Keytool
 
React Nativeの光と闇
React Nativeの光と闇React Nativeの光と闇
React Nativeの光と闇
 
What is gRPC introduction gRPC Explained
What is gRPC introduction gRPC ExplainedWhat is gRPC introduction gRPC Explained
What is gRPC introduction gRPC Explained
 
Introduction to react native
Introduction to react nativeIntroduction to react native
Introduction to react native
 
Rest API
Rest APIRest API
Rest API
 
Appium ppt
Appium pptAppium ppt
Appium ppt
 
Puppeteer - A web scraping & UI Testing Tool
Puppeteer - A web scraping & UI Testing ToolPuppeteer - A web scraping & UI Testing Tool
Puppeteer - A web scraping & UI Testing Tool
 
OpenID Connect Explained
OpenID Connect ExplainedOpenID Connect Explained
OpenID Connect Explained
 
RPC에서 REST까지 간단한 개념소개
RPC에서 REST까지 간단한 개념소개RPC에서 REST까지 간단한 개념소개
RPC에서 REST까지 간단한 개념소개
 

En vedette

Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Kenneth Peeples
 
Overview of Oracle Identity Management - Customer Presentation
Overview of Oracle Identity Management - Customer PresentationOverview of Oracle Identity Management - Customer Presentation
Overview of Oracle Identity Management - Customer Presentation
Delivery Centric
 
Enterprise Single Sign-On - SSO
Enterprise Single Sign-On - SSOEnterprise Single Sign-On - SSO
Enterprise Single Sign-On - SSO
Oliver Mueller
 

En vedette (18)

Zero-compromise IDaaS: Achieve Both Security and Workforce Productivity
Zero-compromise IDaaS:  Achieve Both Security and Workforce ProductivityZero-compromise IDaaS:  Achieve Both Security and Workforce Productivity
Zero-compromise IDaaS: Achieve Both Security and Workforce Productivity
 
Presentation sso design_security
Presentation sso design_securityPresentation sso design_security
Presentation sso design_security
 
Alfresco: Implementing secure single sign on (SSO) with OpenSAML
Alfresco: Implementing secure single sign on (SSO) with OpenSAMLAlfresco: Implementing secure single sign on (SSO) with OpenSAML
Alfresco: Implementing secure single sign on (SSO) with OpenSAML
 
CIS13: Bootcamp: PingOne as a Simple Identity Service
CIS13: Bootcamp: PingOne as a Simple Identity ServiceCIS13: Bootcamp: PingOne as a Simple Identity Service
CIS13: Bootcamp: PingOne as a Simple Identity Service
 
Single sign on
Single sign onSingle sign on
Single sign on
 
Identity as a Service: a missing gap for moving enterprise applications in In...
Identity as a Service: a missing gap for moving enterprise applications in In...Identity as a Service: a missing gap for moving enterprise applications in In...
Identity as a Service: a missing gap for moving enterprise applications in In...
 
Identity as a Service
Identity as a ServiceIdentity as a Service
Identity as a Service
 
IDaaS. The Now Big Thing
IDaaS. The Now Big ThingIDaaS. The Now Big Thing
IDaaS. The Now Big Thing
 
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
 
IdM vs. IDaaS
IdM vs. IDaaSIdM vs. IDaaS
IdM vs. IDaaS
 
SAML Smackdown
SAML SmackdownSAML Smackdown
SAML Smackdown
 
SAML Protocol Overview
SAML Protocol OverviewSAML Protocol Overview
SAML Protocol Overview
 
IdP, SAML, OAuth
IdP, SAML, OAuthIdP, SAML, OAuth
IdP, SAML, OAuth
 
CON8040 Identity as a Service - Extend Enterprise Controls and Identity to th...
CON8040 Identity as a Service - Extend Enterprise Controls and Identity to th...CON8040 Identity as a Service - Extend Enterprise Controls and Identity to th...
CON8040 Identity as a Service - Extend Enterprise Controls and Identity to th...
 
Close the Loop on Incident Response
Close the Loop on Incident ResponseClose the Loop on Incident Response
Close the Loop on Incident Response
 
Overview of Oracle Identity Management - Customer Presentation
Overview of Oracle Identity Management - Customer PresentationOverview of Oracle Identity Management - Customer Presentation
Overview of Oracle Identity Management - Customer Presentation
 
Enterprise Single Sign-On - SSO
Enterprise Single Sign-On - SSOEnterprise Single Sign-On - SSO
Enterprise Single Sign-On - SSO
 
Fast and Free SSO: A Survey of Open-Source Solutions to Single Sign-on
Fast and Free SSO: A Survey of Open-Source Solutions to Single Sign-onFast and Free SSO: A Survey of Open-Source Solutions to Single Sign-on
Fast and Free SSO: A Survey of Open-Source Solutions to Single Sign-on
 

Similaire à SSO IN/With Drupal and Identitiy Management

Trusting External Identity Providers for Global Research Collaborations
Trusting External Identity Providers for Global Research CollaborationsTrusting External Identity Providers for Global Research Collaborations
Trusting External Identity Providers for Global Research Collaborations
jbasney
 
Identity Federation on JBossAS
Identity Federation on JBossASIdentity Federation on JBossAS
Identity Federation on JBossAS
Roger CARHUATOCTO
 

Similaire à SSO IN/With Drupal and Identitiy Management (20)

International Journal of Engineering Inventions (IJEI)
International Journal of Engineering Inventions (IJEI)International Journal of Engineering Inventions (IJEI)
International Journal of Engineering Inventions (IJEI)
 
#3 Wso2 masterclassitalia - wso2 Identity Server: must-have per gestire le id...
#3 Wso2 masterclassitalia - wso2 Identity Server: must-have per gestire le id...#3 Wso2 masterclassitalia - wso2 Identity Server: must-have per gestire le id...
#3 Wso2 masterclassitalia - wso2 Identity Server: must-have per gestire le id...
 
Protect your business with identity and access management in the cloud
Protect your business with identity and access management in the cloudProtect your business with identity and access management in the cloud
Protect your business with identity and access management in the cloud
 
CIS14: Creating a Federated Identity Service for Better SSO
CIS14: Creating a Federated Identity Service for Better SSOCIS14: Creating a Federated Identity Service for Better SSO
CIS14: Creating a Federated Identity Service for Better SSO
 
Single sign on (SSO) How does your company apply?
Single sign on (SSO) How does your company apply?Single sign on (SSO) How does your company apply?
Single sign on (SSO) How does your company apply?
 
[WSO2 Integration Summit Johannesburg 2019] Security in a Distributed Computi...
[WSO2 Integration Summit Johannesburg 2019] Security in a Distributed Computi...[WSO2 Integration Summit Johannesburg 2019] Security in a Distributed Computi...
[WSO2 Integration Summit Johannesburg 2019] Security in a Distributed Computi...
 
SPSVB - Office 365 and Cloud Identity - What Does It Mean for Me?
SPSVB - Office 365 and Cloud Identity - What Does It Mean for Me?SPSVB - Office 365 and Cloud Identity - What Does It Mean for Me?
SPSVB - Office 365 and Cloud Identity - What Does It Mean for Me?
 
kicking your enterprise security up a notch with adaptive authentication sa...
kicking your enterprise security up a notch with adaptive authentication   sa...kicking your enterprise security up a notch with adaptive authentication   sa...
kicking your enterprise security up a notch with adaptive authentication sa...
 
Up 2011-ken huang
Up 2011-ken huangUp 2011-ken huang
Up 2011-ken huang
 
Trusting External Identity Providers for Global Research Collaborations
Trusting External Identity Providers for Global Research CollaborationsTrusting External Identity Providers for Global Research Collaborations
Trusting External Identity Providers for Global Research Collaborations
 
Embracing secure, scalable BYOD with Sencha and Centrify
Embracing secure, scalable BYOD with Sencha and CentrifyEmbracing secure, scalable BYOD with Sencha and Centrify
Embracing secure, scalable BYOD with Sencha and Centrify
 
Keycloak SSO basics
Keycloak SSO basicsKeycloak SSO basics
Keycloak SSO basics
 
Identity Federation on JBossAS
Identity Federation on JBossASIdentity Federation on JBossAS
Identity Federation on JBossAS
 
[WSO2Con EU 2018] Kicking Your Enterprise Security Up a Notch With Adaptive A...
[WSO2Con EU 2018] Kicking Your Enterprise Security Up a Notch With Adaptive A...[WSO2Con EU 2018] Kicking Your Enterprise Security Up a Notch With Adaptive A...
[WSO2Con EU 2018] Kicking Your Enterprise Security Up a Notch With Adaptive A...
 
WSO2Con EU 2015: Securing, Monitoring and Monetizing APIs
WSO2Con EU  2015: Securing, Monitoring and Monetizing APIsWSO2Con EU  2015: Securing, Monitoring and Monetizing APIs
WSO2Con EU 2015: Securing, Monitoring and Monetizing APIs
 
Add End User Sign-in, User Management, and Security to Your Mobile and Web Ap...
Add End User Sign-in, User Management, and Security to Your Mobile and Web Ap...Add End User Sign-in, User Management, and Security to Your Mobile and Web Ap...
Add End User Sign-in, User Management, and Security to Your Mobile and Web Ap...
 
WSO2 ITALIA SMART TALK #3 WSO2 IS NEW FEATURE
 WSO2 ITALIA SMART TALK #3 WSO2 IS NEW FEATURE WSO2 ITALIA SMART TALK #3 WSO2 IS NEW FEATURE
WSO2 ITALIA SMART TALK #3 WSO2 IS NEW FEATURE
 
unit4.pptx
unit4.pptxunit4.pptx
unit4.pptx
 
Codemash-2017
Codemash-2017Codemash-2017
Codemash-2017
 
SPCA2013 - It’s Me, and Here’s My ProofIdentity & Authentication in SharePoin...
SPCA2013 - It’s Me, and Here’s My ProofIdentity & Authentication in SharePoin...SPCA2013 - It’s Me, and Here’s My ProofIdentity & Authentication in SharePoin...
SPCA2013 - It’s Me, and Here’s My ProofIdentity & Authentication in SharePoin...
 

Dernier

Dernier (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

SSO IN/With Drupal and Identitiy Management

  • 1. Single Sign On SSO & ID Management for Web and Mobile Applications Single Sign On and ID Management Presenter: Manish Harsh • Program Manager for Developer Marketing Platforms of NVIDIA (Visual Computing company) • Advisor in Halosys (Enterprise Mobility Solutions and Framework company)
  • 2. Single Sign On and ID Management  Plan B ?  Definition(s)  Types of SSO  Story  Why Identity Management  Commandments for IDM  Devil is in the details  Strategy  Methodology and Monitoring  Deployment Plan  SSO Drupal Modules and Techniques  References and Information  Contact Info Agenda Start
  • 3. Plan B ? “Having a Plan B only References References distracts you from Plan A” SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 4. Definition of SSO Single sign-on (SSO) is a property of access control to multiple related, but independent software systems. Single Sign On and ID Management
  • 5. OR Users provide credentials only once per session, and then gain access to multiple applications without having to sign in again during that session. Users provide same credentials for multiple applications; they might have to login multiple times, but always using the same SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent credentials.
  • 6. Enterprise SSO Scenarios 1. Corporate Login to Cloud Application 2. Cloud Login to Internal Application 3. Corporate Login to Internal Application 4. Using Identity as a Service (IdaaS) Hub 5. Corporate Login to Partner Application SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 7. Scenario 1: Corporate Login to Cloud Application • Corporation hosts the Federation Server that enables SSO with Cloud applications based on standard protocols like SAML or OAuth. Most commonly supported SSO scenario SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent STS
  • 8. Scenario 2: Cloud Login to Internal Application A typical example of this is a user logging into a corporate SharePoint web site with their Facebook account. • A familiar, consumer-friendly model like this is easy to use and decreases support costs associated with a large consumer population. STS SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 9. Scenario 3: Corporate Login to Internal Application This is to decouple authentication/authorization from within each application and to leverage centralized services for these functions. In this case, internal applications would be developed as “relying parties” that trust an internal corporate identity management system for authentication/ authorization decisions. This scenario is often required by organizations as they acquire other companies but cannot create trusts between their Active Directory domains due to legal limitations imposed by differing localities, time constraints, or other internal policies. SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent STS
  • 10. Scenario 4: Identity as a Service (IdaaS) Hub • Users log in with an identity maintained by a Cloud Identity as a Service (IdaaS) Provider and can then access multiple Cloud hosted SaaS applications or corporate hosted partner applications. • A central shared Identity Provider functions as a hub of authentication, allowing federation trusts to be established with all major Identity Providers using industry-standard STS SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent protocols like SAML, WS-Federation, WS-Trust, OpenID, and OAuth. This scenario is more common in specific industries such as healthcare where hospitals and doctor’s practices partner with insurance companies and health care plans. STS IDP
  • 11. SSO for user(s) across multiple applications (Web and Mobile) based on their role and permission. Single Sign On and ID Management Current scenario: Several applications built on different technologies like Drupal 6, Drupal 7 custom PHP, Ruby on Rails and Microsoft technologies. Note: Few of the sites also have native mobile apps. Total Users: ~1 Million Story
  • 12. Challenge (Or Risk) Security: If a user's account or password information is compromised, an intruder could have extensive and easier access to far more resources. Cost: SSO implementations can be expensive in two aspects - the cost to purchase and the manpower to deploy. SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 13. SSO Between Drupal & Non-Drupal Sites 1. Identity Management 2. Custom Authentication SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 14. ID Management Systems with Drupal Module IDM Drupal Modules Janrain https://www.drupal.org/project/janrain_capture Gigya https://www.drupal.org/project/gigya Onelogin https://www.drupal.org/project/onelogin More Exploring… Single Sign On and ID Management
  • 15. Identity Management Single Sign On and ID Management
  • 16. Identity + Management SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 17. Identity + Management Authentication Verification that an entity is who/what it claims to be using a password. Authorization Managing authorization information that defines what operations an entity can perform in the context of a specific application. Roles Roles are groups of operations and/or other roles. Users are granted roles often related to a particular job or job function. Delegation Delegation allows local administrators or supervisors to perform system modifications without a global administrator or for one user to allow another to perform actions on their behalf. More.. Features like analytics, widgets, notifications, alerts etc. SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 18. Terms for SSO and IDM Directory services STS (Security Token System) Service Providers Workflows Identity Providers OpenID Web Services WS-Security Access Control WS-Trust Digital Identities SAML 2.0 Password Managers OAuth Security Tokens RBAC (Role Based Access Control) Single Sign On and ID Management
  • 19. Commandments for IDM Single Sign On and ID Management Determine and declare Authentication Policies • Strength policies • Password management policies • Contractual service level agreement policies • Change management plan
  • 20. Strategy Determine the global session time outs and the device(client side) inactivity timeouts. User Experience and Security Protocol Identify specific applications where due to enterprise risk the timeouts need to be lower than your enterprise values. Understand your system Design a strategy for handling these timeouts. User Experience Single Sign On and ID Management
  • 21. Methodology and Monitoring Determine the action • Failed authentication • Post-authentication • Authorization Technical Methodology and User Experience Transaction Authentication Note: Users should be notified in advance that their computer hardware and IP addresses will be monitored as well as their usage patterns. Transaction authentication is extra monitoring in addition to the successful use of user id and password. • IP address • Geo location • Client device (Mobile/computer) • Login pattern (Time, duration etc.) Single Sign On and ID Management
  • 22. Deployment Plan Determine the number of environments you will use for SSO). • Development Single Sign On and ID Management • Test • QA • Pre-production • Production Determine how applications will be quickly moved between environments? Integration Scripts and tools Determine the peak SSO loads Scalability parameter
  • 23. Custom Authentication 1. External Authentication Script 2. Session Check Script 3. Ticket Generation Script Single Sign On and ID Management
  • 24. Architecture for Custom Authentication SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent Master Site User DB for Master Site Subsite 1 User Subsite 2 ……………………….. Subsite n Attempt to log in site 1
  • 25. External Authentication Script • User attempts to login to any of the site configured for SSO by providing username and password. • The username and password are verified against a common Database (preferably the Master Drupal DB). • Once the script validates the user with the Master DB the user is logged in Single Sign On and ID Management to the requested Site. • Appropriate permission parameters are then checked by the script and the user is granted request to the specific resources.
  • 26. Session Check Script • User requests access to any of the resources on the connected sites. • The script checks if the user is logged in to the master site. • If the user is logged in on the master site the user is succesfully logged in. • If the user is not logged in on the master site: The user is taken to the login page for the master site. Once the user is logs in on the master site the script check is done again and the user is logged in on the other connected sites. SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 27. Ticket Generation Script • User requests access to any of the resources on the connected sites. • The Master DB is requested to generate ticket for the requesting access. • The user is validated and a session ticket is generated by the ticket generation server which is saved as a session parameter in the user’s browser. • The connected sites then use this ticket to verify the login for the user with the ticket generation server for the validity of the ticket. • Login request providing valid tickets are logged in automatically by the script. • The generated tickets are session specific and expire after the configured time. SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 28. Popular Drupal SSO Modules / Techniques… SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent CAS In its most simple use, CAS authenticates users and sends the user to the requested application with a ticket. The application is then responsible for authenticating the ticket (behind the scenes, with a tool like cURL) and automatically logging the user in if the ticket is valid. CAS can also proxy single sign-on. URL: https://drupal.org/project/cas Usage Statistics: https://drupal.org/project/usage/cas
  • 29. Popular Drupal SSO Modules / Techniques… SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent OAuth Connector It makes it possible to connect and sign in a Drupal user with accounts on most third party sites with OAuth APIs. It provides a UI for adding and editing specifications of OAuth APIs that the users should be able to connect to. It also provides exportability of those specifications. Is an implementation of the Connector module. URL: https://drupal.org/project/oauthconnector Usage Statistics: https://drupal.org/project/usage/oauthconnector
  • 30. Popular Drupal SSO Modules / Techniques… SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent LDAP SSO The LDAP Single Sign-On module provides an administrator with the ability to configure a Drupal site to use either NTLMSSP (e.g. seamless automatic login using LDAP / Active Directory credentials passed automatically by supported and properly configured browsers) or basic digest authentication as a fallback to authenticate Drupal users. The net effect is that either automatically, or by visiting a link, a user is authenticated and logged into a Drupal site without requiring the user to manually enter credentials on suitably configured installations. URL: https://drupal.org/project/ldap_sso Usage Statistics: https://drupal.org/project/usage/ldap_sso
  • 31. Popular Drupal SSO Modules / Techniques… SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent Bakery SSO Bakery provides a "single sign-on" feature for Drupal based sites that are on the same second-level domain (i.e. example.com, subsite.example.com, subsite2.example.com). It could also provide support for any other website that implements the same web cookie, xmlrpc, and POST methods. URL: https://drupal.org/project/bakery Usage Statistics: https://drupal.org/project/usage/bakery Also refer: http://drupalwatchdog.com/volume-2/issue-2/drupal-and-secure-single-sign
  • 32. Popular Drupal SSO Modules / Techniques… SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent Shibboleth Authentication Provides user authentication with Shibboleth (both v1.3 and v2.0) as well as some authorization features (automatic role assignment based on Shibboleth attributes). More Info: https://wiki.shibboleth.net/confluence/display/SHIB2/FlowsAndConfig URL: https://drupal.org/project/shib_auth Usage Statistics: https://drupal.org/project/usage/shib_auth
  • 33. Popular Drupal SSO Modules / Techniques… SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent Account Sync The account_sync module allows you to synchronize drupal user account data across multiple Drupal sites. It currently supports basic account information as well as the drupal core profile module. This module uses XMLRPC to transmit data between sites when updates are made so there is no need to have your sites running on the same database, server, or on the same subdomain. URL: https://drupal.org/project/account_sync Usage Statistics: https://drupal.org/project/usage/account_sync
  • 34. Popular Drupal SSO Modules / Techniques… OpenID Single Sign On Relying Party This module provides a simple single sign on solution based on OpenID and native in Drupal. It is the relying party counterpart for a server based on OpenID, related to OpenID Single Sign On Provider. You can set up a central provider (which ideally is another instance of Drupal) and a lot of another (Drupal) websites (so called relying parties). This way the users can login to every single relying party website using a centralized login provider where authentication is happening. URL: https://drupal.org/project/openid_sso_relying Usage Statistics: https://drupal.org/project/usage/openid_sso_relying SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent
  • 35. Popular Drupal SSO Modules / Techniques… Google Apps Authentication Google Apps provides a single sign on API that enables people to write applications that do user authentication against a local database, and then tell google that the user is authenticated. This modules implements the API in drupal. In other words, once properly setup, this module lets Google Apps instances authenticate against your drupal user database. SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent URL : https://drupal.org/project/googleauth Usage Statistics :https://drupal.org/project/usage/googleauth
  • 36. http://merbist.com/2012/04/04/building-and-implementing-a-single-sign-on-solution/ http://www.authenticationworld.com/Single-Sign-On-Authentication/101ThingsToKnowAboutSingleSignOn.pdf SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent http://en.wikipedia.org/wiki/Single_sign-on https://groups.drupal.org/node/182004 http://drupal.stackexchange.com/questions/1758/how-drupal-org-single-sign-on-works http://mauriziostorani.wordpress.com/2008/07/21/single-sign-on-sso-concepts-methods-and-frameworks/ http://scn.sap.com/thread/733802 References
  • 37. 1. Twitter handle: @manishharsh Thanks  2. LinkedIn Profile: https://linkedin.com/in/manishharsh 3. SVDUG (Silicon Valley Drupal User Group): https://meetup.com/drupalgroup 4. Email: manishharsh@gmail.com SWinhgalte t hSeig hne Ockn iasn SdS IOD M| Iann Darguepmalent

Notes de l'éditeur

  1. The scenarios differ based on the location of the user account login being used for authentication, the location of the applications being accessed, and which party hosts the Federation Server(s) that enable single sign-on. In general, an organization will support multiple scenarios in order to support employee, partner, and customer access control to internal applications as well as employee access control to Cloud or Partner applications. Here we discuss a successful approach to the following common SSO scenarios.
  2. This trust relationship simplifies the creation and maintenance of federation trusts by allowing an organization to only configure their applications to trust one Identity Provider. Smaller member organizations can configure their Service Provider applications to directly trust the IdaaS system, while larger organizations with an in-house federation system can configure it to broker the trust with the IdaaS federation services. Federation connections only need to be made once between partner systems and the central Identity as a Service (IdaaS) federation provider, with new services becoming immediately available to all subscribers of the service.
  3. The custom authentication between sites can be done using: External Authentication Script Session Check Script Ticket Generation Script
  4. Prioritize them based on ease of integration, political importance, etc. Determine the global session time outs. Determine the computer inactivity timeouts. Identify specific applications where due to enterprise risk the timeouts need to belower than your enterprise values. Design a strategy for handling these timeouts. Determine the authentication strengths to be used in the WSSO system. Determine the failed authentication actions. Determine the post-authentication actions. Determine the authorization actions. Determine the enterprise LDAP values to be sent to each application, after successful authentication to help the application with authorization,ersonalization and customization. Determine the change management board for managing single sign on. Determine standard audit values to be used in single sign on. Determine the number of environments you will use for SSO (e.g. Development,Test, QA, Pre-production and Production). Determine how applications will be quickly moved between environments? Review with the SSO vendors the work steps required to move an application between environments. Determine what an application owner can and cannot do in each environment. Determine the peak SSO loads. Do load testing in Pre-production to determine that your system will meet much more than your peak load periods. Determine the SSO servers’ failover strategy. Determine the SSO Servers’disaster recovery strategy. Test out the failover SSO server strategy. Test out the disaster SSO server recovery strategy. Determine the LDAP directories failover strategy. Determine the LDAP directories disaster recovery strategy. Test out the LDAP directories failover strategy. Test out the LDAP directories disaster recovery strategy. Determine the web, application, security and LDAP directory servers monitoring requirements. Create service level agreements with each portion of the SSO system (network,web servers, app servers, SSO servers,load balancers, directory servers, and authoritative source identity servers). Determine SSO system availability. Determine when you are able to bring down SSO servers for maintenance. Determine what SSO environments you can reduce time and costs by using virtual servers.
  5. Note however that the users should be notified in advance that their computer hardware and IP addresses will be monitored as well as their usage patterns.
  6. Note however that the users should be notified in advance that their computer hardware and IP addresses will be monitored as well as their usage patterns.
  7. The external authentication script works as follows: User attempts to login to any of the site configured for SSO by providing username and password. The username and password are verified against a common Database (preferably the Master Drupal DB). Once the script validates the user with the Master DB the user is logged in to the requested Site. Appropriate permission parameters are then checked by the script and the user is granted request to the specific resources.