+ All Categories
Home > Technology > Session 3c The SF SaaS Framework

Session 3c The SF SaaS Framework

Date post: 13-May-2015
Category:
Upload: code-mastery
View: 625 times
Download: 2 times
Share this document with a friend
Popular Tags:
26
SaaS Security Using Federated Identity Management Azure AppFabric Access Control Service (ACS) Windows Identity Foundation (WIF)
Transcript
Page 1: Session 3c  The SF SaaS Framework

SaaS Security UsingFederated Identity ManagementAzure AppFabric Access Control Service (ACS)Windows Identity Foundation (WIF)

Page 2: Session 3c  The SF SaaS Framework

• Favor proven security frameworks and industry standards over custom security code

• Single sign on (SSO) between tenants• Preferably not own or manage sensitive data• Avoid account management in the app such as lost password, etc.

What Were The Requirements?

Page 3: Session 3c  The SF SaaS Framework

• Leverage popular web identity providers such as Google, Yahoo.• Leverage Azure ACS as an aggregator of these providers• Leverage WIF for integration with ACS and claims management

Our Solution: Federated Identity Management

Page 4: Session 3c  The SF SaaS Framework

Concept Diagram

Google

Yahoo

Identity Providers SAMLFederation Provider

ACS

ClaimClaim

OpenID

Claim

Relying Party (RP)

STS

IIS

WIF*

Page 5: Session 3c  The SF SaaS Framework

DemoSetup Azure AppFabric Access Control Service (ACS)

Page 6: Session 3c  The SF SaaS Framework

Demo – Preview Portal

Page 7: Session 3c  The SF SaaS Framework

Demo – Portal

Page 8: Session 3c  The SF SaaS Framework

Demo – Create Namespace

Page 9: Session 3c  The SF SaaS Framework

Demo – Manage Access Control

Page 10: Session 3c  The SF SaaS Framework

Demo – Identity Provider

Page 11: Session 3c  The SF SaaS Framework

Demo – Relying Party Application Settings

Page 12: Session 3c  The SF SaaS Framework

Demo – RP – Authentication Settings

Page 13: Session 3c  The SF SaaS Framework

Demo – Edit Rule Group

Page 14: Session 3c  The SF SaaS Framework

Demo – Generate Rules To Create Claims

Page 15: Session 3c  The SF SaaS Framework

Demo – WS-Federation Metadata

Page 16: Session 3c  The SF SaaS Framework

DemoSetup Windows Identity Foundation (WIF)

Page 17: Session 3c  The SF SaaS Framework

Demo – Add STS Reference

Page 18: Session 3c  The SF SaaS Framework

Demo – Application URI

Page 19: Session 3c  The SF SaaS Framework

Demo – STS Location

Page 20: Session 3c  The SF SaaS Framework

Demo – Add Project Reference

Page 21: Session 3c  The SF SaaS Framework

ASP.NET Request Validation

System.Web.HttpRequestValidationException: A potentially dangerous Request.Form value was detected from the client (wresult="<t:RequestSecurityTo...").

Workaround For Testing:

Solution For Production:

Error Message:

Page 22: Session 3c  The SF SaaS Framework

Authentication Flow Diagram

MVC Website

WIF

Browser

1

Access Control Service (ACS)

STS

1. Request login returns 302 redirect to ACS2. Request IP selection form from ACS3. Request login form from IP

Identity Providers(IP)

Google Yahoo

2

3

4

5

4. Post credentials, returns token with 302 redirect to ACS

5. Validate and transform token to SAML claims.

6. Post SAML to MVC website callback. WIF processes and sets cookie.

6

Page 23: Session 3c  The SF SaaS Framework

DemoClaims Authentication And Authorization

Page 24: Session 3c  The SF SaaS Framework

Demo - Claims

Page 25: Session 3c  The SF SaaS Framework

• Your user identities are tied to your ACS namespace - challenging if you ever wanted to migrate away from your ACS namespace

• Additional cost – you pay for each token issued• Reliance on external service for authentication• WIF is not well integrated into the .NET framework (but that improves in

4.5) – WIF is also not very DI friendly

Disadvantages

Page 26: Session 3c  The SF SaaS Framework

• Low barrier to entry for using existing social identities in your app• ACS and WIF encapsulate the complexity• Users don’t need to remember another username and password• Developers get to save time implementing and maintaining account

management features

Summary


Recommended