The Internet of Things is coming upon us bringing a whole range of fundamental changes in the way we imagine, understand, and write services. One of the major trends we’re wittnessing is the breakdown of monoliths, and Microsoft’s web stack is among the candidates. With the new .NET framework and standards like OWIN, the world of web development is changing significantly.
We’re going to cover in this session some advanced scenarios involving ASP.NET MVC 5, WebAPI 2, OWIN, Katana (Microsoft’s implementation of OWIN), and, of course, Windows Azure (Windows Azure Active Directory to be more specific). And to make things more real, we’re going to demonstrate everything using a solution used by our team at HTSS-Genisoft in real-life production.
Unleash Your Potential - Namagunga Girls Coding Club
How # (sharp) is Your Katana (Ciprian Jichici)
1. Premium community conference on Microsoft technologies itcampro@ itcamp14#
How # (sharp) is your Katana?
Ciprian Jichici
General Manager, Genisoft
Chief Architect, High-Tech Systems & Software
Microsoft Regional Director, Romania
MVP, Microsoft Azure
Roxana Goidaci
Chief Architect, Genisoft
2. Premium community conference on Microsoft technologies itcampro@ itcamp14#
Huge thanks to our sponsors & partners!
4. Premium community conference on Microsoft technologies itcampro@ itcamp14#
A new world for web stacks
A real-world business scenario
#ening your Katana
Security, security, security
Agenda
13. Premium community conference on Microsoft technologies itcampro@ itcamp14#
The Sensiblu Mobile App
Datacenter
https://mobile.htss.ro/sensiblu
14. Premium community conference on Microsoft technologies itcampro@ itcamp14#
Service Availability is Critical
Datacenter
https://mobile.htss.ro/sensiblu
Microsoft Azure
REST endpoint tester
18. Premium community conference on Microsoft technologies itcampro@ itcamp14#
Portable – substitute components
Modular/Flexible – small, focused
components, giving great control over use
Lightweight/Performant/Scalable – break
the monolith, consume fewer resources,
scale better
The KATANA Project – High Level Goals
19. Premium community conference on Microsoft technologies itcampro@ itcamp14#
Common wisdom says it has a direct
dependency on the complexity of the
solution
Intermezzo – About Software Scalability
20. Premium community conference on Microsoft technologies itcampro@ itcamp14#
So…..
A piece of software that does absolutely
nothing will scale infinitely
- Scot Hanselman
Intermezzo – About Software Scalability
21. Premium community conference on Microsoft technologies itcampro@ itcamp14#
IAppBuilder is the core concept
Enables the chaining of middleware
components
The KATANA Project
23. Premium community conference on Microsoft technologies itcampro@ itcamp14#
Use an Azure Worker Role
Use Web API for the management endpoint
Use a lightweight web stack based on OWIN /
KATANA
Use Windows Azure Active Directory for
authentication
Our Technical Approach
24. Premium community conference on Microsoft technologies itcampro@ itcamp14#
DEMO
Bootstrapping KATANA in an
Azure Worker Role
26. Premium community conference on Microsoft technologies itcampro@ itcamp14#
Our problem:
The management endpoint cannot be called
by anyone
Secure, but how?
27. Premium community conference on Microsoft technologies itcampro@ itcamp14#
KATANA makes it all “simple”:
1. Register your service with WAAD
2. Call UseWindowsAzureActiveDirectoryBearerAuthentication
when bootstrapping
Believe it or not, that’s all you need to do
Windows Azure Active Directory @ work
28. Premium community conference on Microsoft technologies itcampro@ itcamp14#
But…
There a LOT going on behind the scenes…
Windows Azure Active Directory @ work
29. Premium community conference on Microsoft technologies itcampro@ itcamp14#
We use the Bearer token approach
- No need to prove possession of a
cryptographic key
- Protect in storage and transport (that’s
why we need HTTPS)
The Rich Client Story
30. Premium community conference on Microsoft technologies itcampro@ itcamp14#
DEMO
Implementing a secure Web API
endpoint with KATANA and WAAD
31. Premium community conference on Microsoft technologies itcampro@ itcamp14#
We needed a small, flexible, and secure web stack
in an Azure worker role
We used OWIN / KATANA integrated with
Windows Azure Active Directory
Our solution demonstrates how the new modular
web stack of the future works in a real, cloud-
based scenario
In an nutshell…