SlideShare a Scribd company logo
ASP.NET IDENTITY
Non Intanon | nonintanon.com | non@mrnon.com
ZupZip #9 Skill Update v2

24 November 2013 ~ UTCC
AGENDA
 The History
 ASP.NET Identity
 OWIN

 Katana
 Live Demo 1 – Hello ASP.NET Identity
 Live Demo 2 – Let’s consume the API
 Live Demo 3 – Write your own OWIN middleware
 Lucky Draw!
THE HISTORY
Membership 101
PREVIOUS MEMBERSHIP SYSTEMS
 ASP.NET Membership
 ASP.NET Simple Membership
 ASP.NET Universal Providers
ASP.NET MEMBERSHIP
 Design to solve common membership requirements in 2005
 Form Authentication + SQL Server database
 Limitations





Database schema was designed for SQL Server – CANNOT CHANGE
Profile Provider API is too complicated
Provider system allow to change backing data store, but only Relational Database
Form Authentication won’t work nicely with OWIN
ASP.NET SIMPLE MEMBERSHIP
 Developed as a membership system for ASP.NET Web Pages
 Shipped with Web Matrix and Visual Studio 2010 SP1
 Limitations
 Hard to persist membership system data in a non-relational store
 No OWIN
 Doesn’t work well with existing ASP.NET Membership providers. Not extensible.
ASP.NET UNIVERSAL PROVIDERS
 Developed to make it possible to persist membership information in Windows
Azure SQL Database (work with SQL Server Compact too)
 Built on Entity Framework Code First, which means it can be used to persist data
in any store supported by EF.
 Database schema cleaned up a lot
 Still built on ASP.NET Membership infrastructure hence same limitations
 Still using Form Authentication for log-in and log-out
ASP.NET IDENTITY
The Next Generation Membership System
ASP.NET IDENTITY
 One ASP.NET Identity System
 Ease of plugging in profile data about the user
 Persistence Control

 Unit Testability
 Role Provider
ASP.NET IDENTITY
 Claims Based
 Social Login Providers
 Windows Azure Active Directory

 OWIN Integration
 NuGet Package
OWIN
Open Web Interface for .NET
ZubZib Black Coffee #9 - ASP.NET Identity
OWIN
 Open Web Interface for .NET
 Defines a standard interface between .NET web servers and web applications
 Goal
 To decouple server and application
 Open source ecosystem of .NET web development tools

 Official website

http://owin.org

 Source code

http://github.com/owin/owin

 Specification (OWIN v1.0.0)

http://owin.org/spec/owin-1.0.0.html
OWIN – WTH?
 OWIN is NOT technology
 OWIN is a simple specification that describes how components in a HTTP pipeline
should communicate
 What is in the communication between components is specific to each
component
 OWIN is a community-owned specification, not an implementation
 Inspired by the benefits achieved by Rack () in the Ruby community

 New components could be more easily developed and consumed
 Applications could be more easily ported between hosts and potentially entire
platforms/operating systems
OWIN – SERVER & HOSTS
 Katana

https://katanaproject.codeplex.com

 Nowin

https://github.com/Bobris/Nowin
OWIN - FRAMEWORKS
 Nancy

http://nancyfx.com

 SignalR

http://signalr.net

 WebApi

https://aspnetwebstack.codeplex.com

 FubuMVC

http://mvc.fubu-project.com

 Simple.Web

https://github.com/markrendle/Simple.Web

 DuoVia.Http

https://github.com/duovia/duovia-http
KATANA
OWIN Implementations for Microsoft servers and frameworks
KATANA PROJECT
 Samurai Sword
 OWIN implementations for Microsoft servers and frameworks
 Set of Components for building and hosting OWIN-based web applications

 Set of open-source OWIN components developed by Microsoft
 Office Website

https://katanaproject.codeplex.com
KATANA ARCHITECTURE
LIVE DEMO 1
Hello ASP.NET Identity
LIVE DEMO 2
Let’s consume the API
LIVE DEMO 3
Write your own OWIN middleware
LUCKY DRAW !!
THANK YOU
3 Times

More Related Content

PPTX
Asp.Net Identity
PPT
ASP.NET 13 - Security
PPTX
Asp.net identity dot netconf
ODP
Authentication & Authorization in ASPdotNet MVC
PPTX
Identity in ASP.NET Core
PPTX
What's New in ASP.NET Identity - TRINUG Sept 2014
PPTX
Microsoft asp.net identity security
PPTX
Authentication and Authorization in Asp.Net
Asp.Net Identity
ASP.NET 13 - Security
Asp.net identity dot netconf
Authentication & Authorization in ASPdotNet MVC
Identity in ASP.NET Core
What's New in ASP.NET Identity - TRINUG Sept 2014
Microsoft asp.net identity security
Authentication and Authorization in Asp.Net

What's hot (20)

PPTX
ASP.NET Web Security
PPTX
Asp.net membership anduserroles_ppt
PPTX
Windows Azure Active Directory
PPTX
Hands on with ASP.NET MVC
PPTX
Building a document e-signing workflow with Azure Durable Functions
PPTX
2009 - NRW Conf: (ASP).NET Membership
PPTX
Zero Credential Development with Managed Identities for Azure resources
PDF
Programming with Azure Active Directory
PPTX
Zero credential development with managed identities
PPTX
Zero Credential Development with Managed Identities
PPTX
IBM Watson Work Services Development
PDF
SAML and Liferay
ODP
Apache Syncope and Tirasa
PPTX
Securing SharePoint Apps with OAuth
PPTX
Microsoft Teams community call - February 2020
PPTX
Microsoft Azure Identity and O365
PPTX
Azure Active Directory - An Introduction
PDF
RIA meets Desktop
PPTX
IdP, SAML, OAuth
PPTX
AWS Users Authentication
ASP.NET Web Security
Asp.net membership anduserroles_ppt
Windows Azure Active Directory
Hands on with ASP.NET MVC
Building a document e-signing workflow with Azure Durable Functions
2009 - NRW Conf: (ASP).NET Membership
Zero Credential Development with Managed Identities for Azure resources
Programming with Azure Active Directory
Zero credential development with managed identities
Zero Credential Development with Managed Identities
IBM Watson Work Services Development
SAML and Liferay
Apache Syncope and Tirasa
Securing SharePoint Apps with OAuth
Microsoft Teams community call - February 2020
Microsoft Azure Identity and O365
Azure Active Directory - An Introduction
RIA meets Desktop
IdP, SAML, OAuth
AWS Users Authentication
Ad

Similar to ZubZib Black Coffee #9 - ASP.NET Identity (20)

PPTX
Best of Microsoft Dev Camp 2015
PPTX
Brewing Beer with Windows Azure
PPTX
NuGet 3.0 - Transitioning from OData to JSON-LD
PPTX
Brewing Beer with Windows Azure - NDC2013
PPTX
Introduction to OWIN
PPTX
Owin and-katana-overview
PPTX
Owin and katana overview
PPTX
Owin & katana
PPTX
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
PPTX
Mvc
PDF
ASP.NET Web API Interview Questions By Scholarhat
PPTX
Windows Azure
PPTX
Web API or WCF - An Architectural Comparison
PPTX
Websites, Web Services and Cloud Applications with Visual Studio
PDF
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
PPTX
Build and Deploy LightSwitch Application on Windows Azure
PDF
Web Development with ASP.NET: Taking Control of the Digital World
PDF
Asp-net
PPTX
Asp.net visual studio 2013
Best of Microsoft Dev Camp 2015
Brewing Beer with Windows Azure
NuGet 3.0 - Transitioning from OData to JSON-LD
Brewing Beer with Windows Azure - NDC2013
Introduction to OWIN
Owin and-katana-overview
Owin and katana overview
Owin & katana
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Mvc
ASP.NET Web API Interview Questions By Scholarhat
Windows Azure
Web API or WCF - An Architectural Comparison
Websites, Web Services and Cloud Applications with Visual Studio
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Build and Deploy LightSwitch Application on Windows Azure
Web Development with ASP.NET: Taking Control of the Digital World
Asp-net
Asp.net visual studio 2013
Ad

Recently uploaded (20)

PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Electronic commerce courselecture one. Pdf
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
sap open course for s4hana steps from ECC to s4
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
cuic standard and advanced reporting.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPT
Teaching material agriculture food technology
Encapsulation_ Review paper, used for researhc scholars
Diabetes mellitus diagnosis method based random forest with bat algorithm
Electronic commerce courselecture one. Pdf
MYSQL Presentation for SQL database connectivity
sap open course for s4hana steps from ECC to s4
“AI and Expert System Decision Support & Business Intelligence Systems”
cuic standard and advanced reporting.pdf
A Presentation on Artificial Intelligence
Reach Out and Touch Someone: Haptics and Empathic Computing
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Building Integrated photovoltaic BIPV_UPV.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
The AUB Centre for AI in Media Proposal.docx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Review of recent advances in non-invasive hemoglobin estimation
MIND Revenue Release Quarter 2 2025 Press Release
A comparative analysis of optical character recognition models for extracting...
The Rise and Fall of 3GPP – Time for a Sabbatical?
Teaching material agriculture food technology

ZubZib Black Coffee #9 - ASP.NET Identity

  • 1. ASP.NET IDENTITY Non Intanon | nonintanon.com | non@mrnon.com ZupZip #9 Skill Update v2 24 November 2013 ~ UTCC
  • 2. AGENDA  The History  ASP.NET Identity  OWIN  Katana  Live Demo 1 – Hello ASP.NET Identity  Live Demo 2 – Let’s consume the API  Live Demo 3 – Write your own OWIN middleware  Lucky Draw!
  • 4. PREVIOUS MEMBERSHIP SYSTEMS  ASP.NET Membership  ASP.NET Simple Membership  ASP.NET Universal Providers
  • 5. ASP.NET MEMBERSHIP  Design to solve common membership requirements in 2005  Form Authentication + SQL Server database  Limitations     Database schema was designed for SQL Server – CANNOT CHANGE Profile Provider API is too complicated Provider system allow to change backing data store, but only Relational Database Form Authentication won’t work nicely with OWIN
  • 6. ASP.NET SIMPLE MEMBERSHIP  Developed as a membership system for ASP.NET Web Pages  Shipped with Web Matrix and Visual Studio 2010 SP1  Limitations  Hard to persist membership system data in a non-relational store  No OWIN  Doesn’t work well with existing ASP.NET Membership providers. Not extensible.
  • 7. ASP.NET UNIVERSAL PROVIDERS  Developed to make it possible to persist membership information in Windows Azure SQL Database (work with SQL Server Compact too)  Built on Entity Framework Code First, which means it can be used to persist data in any store supported by EF.  Database schema cleaned up a lot  Still built on ASP.NET Membership infrastructure hence same limitations  Still using Form Authentication for log-in and log-out
  • 8. ASP.NET IDENTITY The Next Generation Membership System
  • 9. ASP.NET IDENTITY  One ASP.NET Identity System  Ease of plugging in profile data about the user  Persistence Control  Unit Testability  Role Provider
  • 10. ASP.NET IDENTITY  Claims Based  Social Login Providers  Windows Azure Active Directory  OWIN Integration  NuGet Package
  • 13. OWIN  Open Web Interface for .NET  Defines a standard interface between .NET web servers and web applications  Goal  To decouple server and application  Open source ecosystem of .NET web development tools  Official website http://owin.org  Source code http://github.com/owin/owin  Specification (OWIN v1.0.0) http://owin.org/spec/owin-1.0.0.html
  • 14. OWIN – WTH?  OWIN is NOT technology  OWIN is a simple specification that describes how components in a HTTP pipeline should communicate  What is in the communication between components is specific to each component  OWIN is a community-owned specification, not an implementation  Inspired by the benefits achieved by Rack () in the Ruby community  New components could be more easily developed and consumed  Applications could be more easily ported between hosts and potentially entire platforms/operating systems
  • 15. OWIN – SERVER & HOSTS  Katana https://katanaproject.codeplex.com  Nowin https://github.com/Bobris/Nowin
  • 16. OWIN - FRAMEWORKS  Nancy http://nancyfx.com  SignalR http://signalr.net  WebApi https://aspnetwebstack.codeplex.com  FubuMVC http://mvc.fubu-project.com  Simple.Web https://github.com/markrendle/Simple.Web  DuoVia.Http https://github.com/duovia/duovia-http
  • 17. KATANA OWIN Implementations for Microsoft servers and frameworks
  • 18. KATANA PROJECT  Samurai Sword  OWIN implementations for Microsoft servers and frameworks  Set of Components for building and hosting OWIN-based web applications  Set of open-source OWIN components developed by Microsoft  Office Website https://katanaproject.codeplex.com
  • 20. LIVE DEMO 1 Hello ASP.NET Identity
  • 21. LIVE DEMO 2 Let’s consume the API
  • 22. LIVE DEMO 3 Write your own OWIN middleware