320 likes | 430 Views
mdc 2013. Demystifying the Modern Identity Stack. Mike Benkovich- @ mbenko Local Computer Guy www.Benkotips.com. Mike Benkovich mike@benko.com. - Former Microsoft developer evangelist - Twin Cities based - Technology Services
E N D
mdc2013 Demystifying the Modern Identity Stack Mike Benkovich- @mbenko Local Computer Guy www.Benkotips.com
Mike Benkovich mike@benko.com • - Former Microsoft developer evangelist • - Twin Cities based • - Technology Services • - Windows 8, phone, and Cloud consulting- www.benkoTIPS.com • - @mbenkoon Twitter • - Send me Feedback! http://bit.ly/bqtMDC13
Checklist • Tackle those, and you’ve got the Identity Stack! • What is the Microsoft Identity Stack? • How to use Application Identity • How to use Public Identity • How to use Corporate Identity
Application Identity • User accounts created for sole use by the app • Storage and management of accounts? • How do you securely store passwords? • How do users reset or retrieve their passwords?
Some History… • 2005 - Forms Based Authentication (provider model)
IIS Process Flow HTTP Request HTTP Request Anon Anon Basic Basic NTLM Authentication Authentication ResolveCache Authorization aspnet_isapi.dll aspnet_isapi.dll CGI Execute Handler Authentication Authentication Determine Handler Static File Forms Forms Windows Windows Static File ASPX ASPX ISAPI ISAPI Map Handler Map Handler Trace Trace … … UpdateCache Send Response Send Response Log Log Compression Compression HTTP Response HTTP Response
IIS Configuration • Found in ApplicationHost.config • Customized per app in web.config • Changes in config affect pipeline processing • This is how to configure IIS to run PHP
.NET Provider Model • Membership provider abstracts authentication pattern • Role provider handles authorization • Plug and play…custom providers • Implemented thru IIS pipeline <system.web> <authorization> <denyusers="?" /> </authorization> <authenticationmode="Forms"> <formsloginUrl="myLogin.aspx"/> </authentication> </system.web>
DEMO • Provider Model
Public Identity • OAuth and standards based • Token servers that provide information about users • Don’t have to manage passwords • Think Google, Facebook, Twitter, Live ID, LinkedIn… • …but… • Limited claim set • How much should you trust it?
REST, OAuth2 Resource App
2010 ACS – Access Control Services • Acts as a “bouncer” to check id before granting access • Handles OAuth conversation with simple redirection • Claims based authentication • Part of Windows Azure services • Requires namespace • Handles creation of access token <system.webServer> <modules> <removename="FormsAuthentication" /> <addname="WSFederationAuthenticationModule" … <addname="SessionAuthenticationModule" … </modules> </system.webServer>
DEMO • Access Control Services
Some History… • 2005 - Forms Based Authentication (provider model) • 2010 - Access Control Services (Windows Azure) • 2012 - Simple Membership Provider
DEMO • Simple Membership Provider
Some History… • 2005 - Forms Based Authentication (provider model) • 2010 - Access Control Services (Windows Azure) • 2012 - Simple Membership Provider • 2012 - Azure Mobile Services
Windows Azure Mobile Services • Cross device REST based interface • Provides Data, Notification, Scheduling and Identity features • Configurable for identity providers • Simple coding model
DEMO • Mobile Services
Some History… • 2005 - Forms Based Authentication (provider model) • 2010 - Access Control Services (Windows Azure) • 2012 - Simple Membership Provider • 2012 - Azure Mobile Services • 2013 - Azure Active Directory
Corporate Identity • Managed by security team • Provision user accounts • Deactivate accounts as needed • Typically directory based…Active Directory • Includes more information than just credentials
Windows Azure Active Directory • Manage Users • Applications and access • Claims api • OAuth
Windows Azure Active Directory Management Portal Windows Azure Active Directory OAuth2 SAML-P WS-Federation Metadata Graph API Contoso’s tenant Dir Sync A M Contoso’s On-Premises Directory
Windows Azure Active Directory A M Contoso’s On-Premises Directory
DEMO • Windows Azure Active Directory
More information • Download slides and demo code at • www.benkoTIPS.com • Follow Vittorio Bertocci – Identity Architect at Microsoft @vibronetand www.cloudidentity.com • Contact me at mike@benko.com
REST, OAuth2 Resource App
Windows Azure Active Directory A M Contoso’s On-Premises Directory
Clientsand Resources in Windows Azure AD • Registration • Today - via Graph Explorer • Soon - via Windows Azure Portal Resource Resource App App