SlideShare ist ein Scribd-Unternehmen logo
1 von 24
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
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

Weitere ähnliche Inhalte

Was ist angesagt?

Asp.net membership anduserroles_ppt
Asp.net membership anduserroles_pptAsp.net membership anduserroles_ppt
Asp.net membership anduserroles_pptShivanand Arur
 
Windows Azure Active Directory
Windows Azure Active DirectoryWindows Azure Active Directory
Windows Azure Active DirectoryKrunal Trivedi
 
Hands on with ASP.NET MVC
Hands on with ASP.NET MVC  Hands on with ASP.NET MVC
Hands on with ASP.NET MVC rahulsahay19
 
Building a document e-signing workflow with Azure Durable Functions
Building a document e-signing workflow with Azure Durable FunctionsBuilding a document e-signing workflow with Azure Durable Functions
Building a document e-signing workflow with Azure Durable FunctionsJoonas Westlin
 
2009 - NRW Conf: (ASP).NET Membership
2009 - NRW Conf: (ASP).NET Membership2009 - NRW Conf: (ASP).NET Membership
2009 - NRW Conf: (ASP).NET MembershipDaniel Fisher
 
Zero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resourcesZero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resourcesJoonas Westlin
 
Programming with Azure Active Directory
Programming with Azure Active DirectoryProgramming with Azure Active Directory
Programming with Azure Active DirectoryJoonas Westlin
 
Zero credential development with managed identities
Zero credential development with managed identitiesZero credential development with managed identities
Zero credential development with managed identitiesJoonas Westlin
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesJoonas Westlin
 
IBM Watson Work Services Development
IBM Watson Work Services DevelopmentIBM Watson Work Services Development
IBM Watson Work Services DevelopmentVan Staub, MBA
 
Securing SharePoint Apps with OAuth
Securing SharePoint Apps with OAuthSecuring SharePoint Apps with OAuth
Securing SharePoint Apps with OAuthKashif Imran
 
Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020Microsoft 365 Developer
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Kris Wagner
 
Azure Active Directory - An Introduction
Azure Active Directory  - An IntroductionAzure Active Directory  - An Introduction
Azure Active Directory - An IntroductionVenkatesh Narayanan
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets DesktopPeter Elst
 

Was ist angesagt? (20)

ASP.NET Web Security
ASP.NET Web SecurityASP.NET Web Security
ASP.NET Web Security
 
Asp.net membership anduserroles_ppt
Asp.net membership anduserroles_pptAsp.net membership anduserroles_ppt
Asp.net membership anduserroles_ppt
 
Windows Azure Active Directory
Windows Azure Active DirectoryWindows Azure Active Directory
Windows Azure Active Directory
 
Hands on with ASP.NET MVC
Hands on with ASP.NET MVC  Hands on with ASP.NET MVC
Hands on with ASP.NET MVC
 
Building a document e-signing workflow with Azure Durable Functions
Building a document e-signing workflow with Azure Durable FunctionsBuilding a document e-signing workflow with Azure Durable Functions
Building a document e-signing workflow with Azure Durable Functions
 
2009 - NRW Conf: (ASP).NET Membership
2009 - NRW Conf: (ASP).NET Membership2009 - NRW Conf: (ASP).NET Membership
2009 - NRW Conf: (ASP).NET Membership
 
Zero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resourcesZero Credential Development with Managed Identities for Azure resources
Zero Credential Development with Managed Identities for Azure resources
 
Programming with Azure Active Directory
Programming with Azure Active DirectoryProgramming with Azure Active Directory
Programming with Azure Active Directory
 
Zero credential development with managed identities
Zero credential development with managed identitiesZero credential development with managed identities
Zero credential development with managed identities
 
Zero Credential Development with Managed Identities
Zero Credential Development with Managed IdentitiesZero Credential Development with Managed Identities
Zero Credential Development with Managed Identities
 
IBM Watson Work Services Development
IBM Watson Work Services DevelopmentIBM Watson Work Services Development
IBM Watson Work Services Development
 
SAML and Liferay
SAML and LiferaySAML and Liferay
SAML and Liferay
 
Apache Syncope and Tirasa
Apache Syncope and TirasaApache Syncope and Tirasa
Apache Syncope and Tirasa
 
Securing SharePoint Apps with OAuth
Securing SharePoint Apps with OAuthSecuring SharePoint Apps with OAuth
Securing SharePoint Apps with OAuth
 
Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020Microsoft Teams community call - February 2020
Microsoft Teams community call - February 2020
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365
 
Azure Active Directory - An Introduction
Azure Active Directory  - An IntroductionAzure Active Directory  - An Introduction
Azure Active Directory - An Introduction
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets Desktop
 
IdP, SAML, OAuth
IdP, SAML, OAuthIdP, SAML, OAuth
IdP, SAML, OAuth
 
AWS Users Authentication
AWS Users AuthenticationAWS Users Authentication
AWS Users Authentication
 

Ähnlich wie ZubZib Black Coffee #9 - ASP.NET Identity

Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Bluegrass Digital
 
Brewing Beer with Windows Azure
Brewing Beer with Windows AzureBrewing Beer with Windows Azure
Brewing Beer with Windows AzureMaarten Balliauw
 
NuGet 3.0 - Transitioning from OData to JSON-LD
NuGet 3.0 - Transitioning from OData to JSON-LDNuGet 3.0 - Transitioning from OData to JSON-LD
NuGet 3.0 - Transitioning from OData to JSON-LDJeff Handley
 
Brewing Beer with Windows Azure - NDC2013
Brewing Beer with Windows Azure - NDC2013Brewing Beer with Windows Azure - NDC2013
Brewing Beer with Windows Azure - NDC2013Maarten Balliauw
 
Owin and-katana-overview
Owin and-katana-overviewOwin and-katana-overview
Owin and-katana-overviewsonia merchant
 
Owin and katana overview
Owin and katana overviewOwin and katana overview
Owin and katana overviewPooja Gaikwad
 
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...Quek Lilian
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonAdnan Masood
 
Websites, Web Services and Cloud Applications with Visual Studio
Websites, Web Services and Cloud Applications with Visual StudioWebsites, Web Services and Cloud Applications with Visual Studio
Websites, Web Services and Cloud Applications with Visual StudioMicrosoft Visual Studio
 
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Arrow Consulting & Design
 
Build and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows AzureBuild and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows AzureK.Mohamed Faizal
 
Web Development with ASP.NET: Taking Control of the Digital World
Web Development with ASP.NET: Taking Control  of the Digital WorldWeb Development with ASP.NET: Taking Control  of the Digital World
Web Development with ASP.NET: Taking Control of the Digital Worldcompany
 
Asp.net visual studio 2013
Asp.net   visual studio 2013Asp.net   visual studio 2013
Asp.net visual studio 2013Tyrone Moodley
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Osconvijayrvr
 

Ähnlich wie ZubZib Black Coffee #9 - ASP.NET Identity (20)

Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
OWIN
OWINOWIN
OWIN
 
Brewing Beer with Windows Azure
Brewing Beer with Windows AzureBrewing Beer with Windows Azure
Brewing Beer with Windows Azure
 
NuGet 3.0 - Transitioning from OData to JSON-LD
NuGet 3.0 - Transitioning from OData to JSON-LDNuGet 3.0 - Transitioning from OData to JSON-LD
NuGet 3.0 - Transitioning from OData to JSON-LD
 
Brewing Beer with Windows Azure - NDC2013
Brewing Beer with Windows Azure - NDC2013Brewing Beer with Windows Azure - NDC2013
Brewing Beer with Windows Azure - NDC2013
 
Introduction to OWIN
Introduction to OWINIntroduction to OWIN
Introduction to OWIN
 
Owin and-katana-overview
Owin and-katana-overviewOwin and-katana-overview
Owin and-katana-overview
 
Owin and katana overview
Owin and katana overviewOwin and katana overview
Owin and katana overview
 
Owin & katana
Owin & katanaOwin & katana
Owin & katana
 
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
 
Mvc
MvcMvc
Mvc
 
Windows Azure
Windows AzureWindows Azure
Windows Azure
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural Comparison
 
Websites, Web Services and Cloud Applications with Visual Studio
Websites, Web Services and Cloud Applications with Visual StudioWebsites, Web Services and Cloud Applications with Visual Studio
Websites, Web Services and Cloud Applications with Visual Studio
 
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
 
Build and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows AzureBuild and Deploy LightSwitch Application on Windows Azure
Build and Deploy LightSwitch Application on Windows Azure
 
Web Development with ASP.NET: Taking Control of the Digital World
Web Development with ASP.NET: Taking Control  of the Digital WorldWeb Development with ASP.NET: Taking Control  of the Digital World
Web Development with ASP.NET: Taking Control of the Digital World
 
Asp-net
 Asp-net Asp-net
Asp-net
 
Asp.net visual studio 2013
Asp.net   visual studio 2013Asp.net   visual studio 2013
Asp.net visual studio 2013
 
Vijay Oscon
Vijay OsconVijay Oscon
Vijay Oscon
 

Kürzlich hochgeladen

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Kürzlich hochgeladen (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

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
  • 12.
  • 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