Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction What is SOA? WCF WPF ...

60
Amit Bahree Senior Solution Architect Avanade

Transcript of Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction What is SOA? WCF WPF ...

Page 1: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Amit BahreeSenior Solution ArchitectAvanade

Page 2: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Agenda

.NET 3.0 Introduction What is SOA? WCF WPF WF CardSpace Q&A

Page 3: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

.NET 3.0

Page 4: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Agenda

.NET 3.0 Introduction What is SOA? WCF WPF WF CardSpace Q&A

Page 5: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Why Messages?

Cross-platform Integration Asynchronous Communication Reliable Communication Mediation Thread Management Remote Communication End-to-End Security

Page 6: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Definitions

Service An autonomous system that accepts

requests and returns responses via set of published and well defined interfaces.

Service Orientation An Architectural paradigm that employs

the four tenets. Service Oriented Architecture

A architectural comprising of a collection of services which adheres to the four tenets.

Page 7: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Four Tenets of Service Orientation

Page 8: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Boundaries are Explicit

Know your Boundaries. Services should be easy to consume. Avoid RPC Interfaces. Keep the service surface area small. Don’t expose implementation details.

Page 9: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Services are Autonomous

Service versioning and deployment are independent of the system in which they are deployed.

Contracts should not change after publishing.

Adopt a pessimistic approach and isolate services from failure.

Page 10: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Share Schema & Contract, not Class Contracts and schema interact based on

data, WSDL and policy do not change over time.

Contracts should be as explicit as possible. If a service contract needs to be broken

then version the service, thereby minimizing the “ripple effect”.

Don’t expose internal representation.

Page 11: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Service Compatibility is based on Policy Separate service interactions from

constraints on those interactions. Service capabilities and requirements

are expressed in terms of a policy expression

Assertions identified by stable, globally unique names

Page 12: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

SOA – the Holy Grail?

Myth Reality

Is a technology or a set of technologies.

It is revolutionary. It is the end goal. Requires Business and

Technology overhaul. Complex and requires

a lot of resources (people).

Is an architectural paradigm.

It is evolutionary. It is the means to an

end. It is an incremental

process. Relatively easy and

does not need an army.

Page 13: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Agenda

.NET 3.0 Introduction What is SOA? WCF WPF WF CardSpace Q&A

Page 14: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Three Pillars of WCF

Page 15: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

ASMX WSE

.NETRemoting

System.Messagin

g

Enterprise

Services

Today’s Technology

Page 16: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Interop withInterop withother platformsother platforms

ASMX

Ent Ent ServicesServices

Attribute-based programming

WSEWSE

WS-* protocols

Sys.MessaSys.Messagingging

Message- based programming

LocationLocationtransparencytransparency

Remoting

Unified framework supersets existing technologiesUnified framework supersets existing technologies

WCF Unified Framework

Page 17: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

WCF Architecture

Page 18: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Service Model Layer

Influences and adds to the programming model based on

incoming messages

Messaging Layer

Moves messages backand forth and adds transfer semantics

(channels)

ServiceServiceCodeCode

Transaction Behavior

CLR Type Integration

Instancing Behavior

Security

Channel

TCP Transpor

t

Security

Channel

TCP Transpor

t

Transaction Behavior

CLR Type Integration

Composable Architecture

Page 19: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Service Model LayerService Model Layer Messaging LayerMessaging Layer

BehaviorsBehaviors ChannelsChannels

Transaction Behavior

CLR Type Integration

Instancing Behavior

Security

Channel

HTTP Transpor

t

Custom Channel

Reliable Messagin

g

Queue Transpor

t

MSMQ Integrati

on

TCP Transpor

t

Named Pipes

Throttling Behavior

Error Handling Behavior

Concurrency Behavior

Metadata Behavior

Custom Behavior

HTTP Transpor

t

TCP Transpor

t

Security

Channel

Custom Channel

Reliable Messagin

g

CLR Type Integration

Instancing Behavior

Transaction Behavior

Composability in Action

Page 20: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

WCF Architecture

Windows Activation Windows Activation ServiceService

Windows Activation Windows Activation ServiceService .EXE.EXE

.EXE.EXE Windows Windows ServicesServices

Windows Windows ServicesServices COM+COM+

COM+COM+

HTTP Chann

el

HTTP Chann

el

TCPChann

el

TCPChann

el

Transaction Flow

Channel

Transaction Flow

Channel

NamedPipe

Channel

NamedPipe

Channel

MSMQ Chann

el

MSMQ Chann

el

Security

Channel

Security

Channel

Reliable Msg

Channel

Reliable Msg

Channel

Binary Encode

r

Binary Encode

r

Text Encode

r

Text Encode

r

XML Encode

r

XML Encode

r

MTOM Encode

r

MTOM Encode

r

Transaction

Transaction

Dispatch

Dispatch

Concurrency

Concurrency

Throttling

Throttling

Metadata

Metadata ErrorErrorInstanceInstance

Message Inspection

Message Inspection

ContractsData

DataMessage

MessageService

Service Policy and Binding

Policy and Binding

Parameter Filtering

Parameter Filtering

ApplicationApplication

Page 21: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Side-by-SideSide-by-Side

InteropInterop

UpgradeUpgrade

Investment Protection

Page 22: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

20,379 lines security

5,988 lines reliable messaging

25,507 lines transactions

Total lines 56,296

4,442 lines infrastructure

class HelloService { [WebMethod] public String Hello(String Greeting) {

X509CertificateCollection collection = new X509CertificateCollection();IntPtr blob = Marshal.AllocHGlobal(Marshal.SizeOf( typeof(CRYPTOAPI_BLOB))); IntPtr data = (IntPtr)((int)blob + Marshal.SizeOf(typeof(CRYPTOAPI_BLOB)));…

SeqAckRange range = new SeqAcknRange(id, low, high );SeqAckRange[] ranges = { range };ReliableQueue.ProcessAcks( ranges );…

hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction);…

return Greeting; }}

Development ProductivityUsing Visual Studio .NET 2003

Page 23: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Development ProductivityUsing Visual Studio .NET 2003 and WSE

10 lines security

1,804 lines reliable messaging

25,507 lines transactions

Total lines 27,321

class HelloService { [WebMethod] public String Hello(String Greeting) {

foreach ( SecurityToken tok in requestContext.Security.Tokens { X509SecurityToken token = tok as X509SecToken }

… SeqAckRange range = new SeqAcknRange(id,low,high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); …

hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); …

return Greeting; }}

Page 24: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Development ProductivityUsing Visual Studio 2005 and WCF

1 lines security

1 lines reliable messaging

1 lines transactions

Total lines 3

[ServiceContract(SecureChannel, SecurityMode =“Windows")][Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)][ServiceContract]class HelloService { [ServiceOperation(TransactionFlowAllowed = true)] String Hello(String Greeting) { return Greeting; }

Page 25: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

More than changing Transport Layers

Page 26: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Agenda

.NET 3.0 Introduction What is SOA? WCF WPF WF CardSpace Q&A

Page 27: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

What is User Experience?

Term used to describe the overall experience and satisfaction a user has when using a product or system.

Commonly refers to a combination of software and business topics.

Applies to any result of interaction design e.g. VRU’s.

From Wikipedia

Page 28: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

User Experience in Software

Page 29: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

User Experience Challenges

Page 30: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

WPF Vision Unified approach to UI,

Documents, and Media Integration as part of

development and experience

Integrated, vector-based composition engine Utilizing the power of the PC

throughout the graphics stack

Declarative programming Bringing designers directly into

application development

Ease of deployment Allowing administrators to

deploy and manage applications securely

Page 31: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Unified Approach

With XAML designers With XAML designers

& developers can & developers can

streamline their streamline their

collaborationcollaboration

Page 32: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Declarative Programming

Built in controls have hard-coded look

Doing something custom takes lots of extra code WinXP Start Button team:

4 Developers, ~6 Months Dev Time

Page 33: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

XAML – Declarative Programming

<Button Width="100"> OK <Button.Background> LightBlue </Button.Background></Button>

XAML

Button b1 = new Button();b1.Content = "OK";b1.Background = new SolidColorBrush(Colors.LightBlue);b1.Width = 100;

C#

Dim b1 As New Buttonb1.Content = "OK"b1.Background = New _ SolidColorBrush(Colors.LightBlue)b1.Width = 100

VB.NET

XAMLXAMLeXtensible Application Markup LanguageeXtensible Application Markup Language

Page 34: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Application or Browser?

SecurityChecking for Updates

Accessible

Page 35: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

New Document Technologies XPS Print Path WPF Document API Open Document Specification XPS Viewer “Save As” Print Driver

Page 36: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Application Services

Deployment Services

Databinding

USER INTERFACE SERVICES

XAML

Accessibility

Property System

Input & Eventing

BASE SERVICES

DOCUMENT SERVICES

Packaging Services

XPS Documents

Animation

2D

3D

AudioImaging

Text

VideoEffects

Composition Engine

MEDIA INTEGRATION LAYER

Controls

Layout

WPF Architecture

Page 37: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

More than a Pretty Face

Delivering Innovative User Experiences

Increase Developer – Designer Productivity

Flexible Application Deployment Leverage Existing Investment

Page 38: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Agenda

.NET 3.0 Introduction What is SOA? WCF WPF WF CardSpace Q&A

Page 39: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

EX: Check InventoryEX: Escalate To Manager

What Is A Workflow?

A Set Of Activities A Set Of Activities That Coordinates People That Coordinates People

And / Or Software...And / Or Software...

Like a flowchart…. Like a flowchart…. Or a state diagram…. Or a state diagram….

Sequential Workflow

Sequential structure Prescribes processing order

Step1

Step2

State MachineWorkflow

External events drive processing order

State2

State1Event

Event

Rules + data state drive processing order

Rules-driven Activities

Rule1

Rule2

Data

Step2

Step1

Page 40: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Activity Basics

Activities are the building blocks of workflows

Basic Activities – steps within a workflow and do “work”

Composite Activities – contains other activities

Forms and Controls Activity Control Workflow Form

Page 41: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Host ProcessHost Process

WF Architecture

Workflow Foundation

Runtime EngineRuntime Engine

A Workflow

Activity

Runtime ServicesRuntime Services

Base Activity LibraryBase Activity Library

Custom Activity Library

Visual Designer

Components

Key Concepts Workflows is a set of

Activities. Workflows run within a host

process. Developers can build their

own Custom Activity Libraries

Base Activity Library – Out-of-box activities and base for custom activities.

Runtime Engine – Workflow execution and state management.

Runtime Services – Hosting flexibility and communication.

Visual Designer – Graphical and code-based construction

Page 42: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

WF Authoring Modes

Markup Only“Declarative”

XML defines workflowstructure logic and dataflow

XAML

Code Only

Code creates workflowin constructor

C#/VB

Markup & Code

XML defines workflowCode-beside definesextra logic

XAML C#/VB

Workflow Loader

Workflow Compilerwfc.exe

C#/VB Compiler.NET Assembly

Workflow Runtime

Workflow Runtime

ApplicationGenerated

XAML C#/VB

App. Creates ActivityTree & Serializes

Page 43: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Extensible Approach

OOB activities,workflow types, base typesGeneral-purposeActivity libraries define workflow constructs

Out-of-Box Activities

Base Activity Base Activity LibraryLibrary

Create/Extend/Compose activitiesApp-specificbuilding blocksFirst-class citizens

Compose activities

Extend activity

Author new activity

Custom Activity Custom Activity LibrariesLibraries

Vertical-specificactivities & workflowsBest-practice IP &Knowledge

Compliance

RosettaNet

CRM

IT Mgmt

Domain-SpecificDomain-SpecificWorkflow Workflow PackagesPackages

Page 44: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Two Workflow Products

Page 45: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Workflow and BizTalk

MessagingMessaging

DesigDesignn

ToolsTools

BusinesBusinesss

ActivityActivityMonitorMonitor

AndAndAdminAdminToolsTools

OrchestratioOrchestrationn

TransformatiTransformationon

AdaptersAdapters

BizTalkBizTalkAcceleratorsAccelerators

Premium BPM serverPremium BPM serverDistinct server productDistinct server product

Use in B2B, EAI, BPM scenariosUse in B2B, EAI, BPM scenarios

Deployable solutionsDeployable solutions

Manageability, Scale-outManageability, Scale-out

WorkflowWorkflow

Future version will migrate to Future version will migrate to Windows Workflow Foundation for Windows Workflow Foundation for orchestrationorchestration

WinFXWinFX

Visual Studio DesignerVisual Studio Designer

Windows Workflow Windows Workflow FoundationFoundation

Workflow frameworkWorkflow frameworkFuture technology Future technology

Broad set of scenarios Broad set of scenarios

Used to build solutionsUsed to build solutions

Enables manageability and scale-Enables manageability and scale-out in solutionsout in solutions

Use for building workflow into Use for building workflow into apps or workflow enabled serversapps or workflow enabled servers

Page 46: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Windows Workflow Foundation

Page 47: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Agenda

.NET 3.0 Introduction What is SOA? WCF WPF WF CardSpace Q&A

Page 48: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Identity Crisis The Internet is more useful then ever… and The Internet is more useful then ever… and

more dangerous – It was designed without an more dangerous – It was designed without an identity layeridentity layer

Password FatiguePassword Fatigue Username + password is weak and overwhelmedUsername + password is weak and overwhelmed Identity theft, spoofing, phishing, fraudIdentity theft, spoofing, phishing, fraud

Enterprises are in identity silo hellEnterprises are in identity silo hell

www.antiphishing.orgwww.antiphishing.org

22% Stopped

25% Reduced

Page 49: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Goals Safe and secure Internet for allSafe and secure Internet for all

Safely, reliably identify sites to users…Safely, reliably identify sites to users… ……and users to sitesand users to sites Usable by everyone, everywhereUsable by everyone, everywhere Put users in control of their identityPut users in control of their identity

Connected SystemsConnected Systems Remove walls between systemsRemove walls between systems Internal and externalInternal and external

Page 50: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

The Laws of Identity

User Control and ConsentUser Control and Consent Limited Disclosure for Limited UseLimited Disclosure for Limited Use Justifiable PartiesJustifiable Parties Directed Identity (Omni and Uni-Directed Identity (Omni and Uni-

Directional)Directional) Pluralism of Operators and TechnologiesPluralism of Operators and Technologies Human IntegrationHuman Integration Consistent Experience Across ContextsConsistent Experience Across Contexts

http://www.identityblog.com/

Page 51: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Identity Metasystem

Universal adoption of a single identity system Universal adoption of a single identity system unlikelyunlikely

Unifying identity meta-systemUnifying identity meta-system Connect and leverage the strengths of constituent Connect and leverage the strengths of constituent

identity systemsidentity systems Platform IndependentPlatform Independent Standard UIStandard UI

Protect applications from underlying Protect applications from underlying complexitiescomplexities

Decouple digital identity from implementation Decouple digital identity from implementation detailsdetails

Page 52: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Metasystem Concepts

Identity: A set of Identity: A set of claimsclaims in a in a security security token token provided by (and about) a provided by (and about) a subjectsubject

Roles :Roles : Relying PartyRelying Party Subject (user / client)Subject (user / client) Identity ProviderIdentity Provider

Protocol:Protocol: User is asked for identityUser is asked for identity User chooses an identity providerUser chooses an identity provider Identity provider gives user a security tokenIdentity provider gives user a security token User passes the token to the requestorUser passes the token to the requestor

Page 53: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Protocol Drill Down

Identity Provider(IP)

Relying Party(RP)

ClientClient wants to access a resource

RP provides identity requirements

1

2

User

3 Which IPs can satisfy requirements?

User selects an IP4

5Request security token (authentication required e.g. X509, Kerberos, username/pwd, self-issued token)

6

Return security token based on RP’s requirements (any format) – and optional signed display token

7 User approves release of token

8 Token released to RP (RP reads token and allows access)

Windows CardSpace

Page 54: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

What is Windows CardSpace? Identity Selector for Windows

Digital identities represented by cards When user selects a card

Get security token from Identity Provider Give it to the Relying Party after user

consent User is in control Security

TokenService

UserExperience Service

Page 55: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Windows CardSpace

Easily and safely manage digital identities.

Authenticate with Websites and Web Service.

Easier No Usernames No Password Consistent login and

registration Safer

Avoid Phishes Multi-Factor Authentication Users in Control

Page 56: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

WS-*Web Services

Windows CardSpace

User Relying Party

Identity Provider

Page 57: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

CardSpace Cards

Contains claims about my identity that I assert

Not corroborated Stored locally Signed and encrypted to

prevent replay attacks Presented by user during

account sign-up

Provided by banks, stores, government, clubs, etc.

Locally stored cards contain metadata only (no identity)

Data stored by Identity Provider and obtained only when card submitted (from STS)

Provisions .CRD file via email, website, group policy etc.

Self Issued Managed

Page 58: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

CardSpace and the Enterprise User-centric, active federation Information Cards

Standardized and ubiquitous Flexible, agile user-driven relationships Anti-phishing and information

minimalization Security Token Services

Identity service which connects systems

Page 59: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Agenda

.NET 3.0 Introduction What is SOA? WCF WPF WF CardSpace Q&A

Page 60: Amit Bahree Senior Solution Architect Avanade. Agenda .NET 3.0 Introduction  What is SOA?  WCF  WPF  WF  CardSpace  Q&A.

Contact Information Amit Bahree

Senior Solution ArchitectAvanade

email: amitb<NOSPAM>@avanade.com blog: www.desigeek.com

msdn webcast: TBA msdn articles: TBA

book: http://tinyurl.com/2meycl