Presentation is loading. Please wait.

Presentation is loading. Please wait.

Integrate Applications Using Web Services and BizTalk

Similar presentations


Presentation on theme: "Integrate Applications Using Web Services and BizTalk"— Presentation transcript:

1 Integrate Applications Using Web Services and BizTalk
Microsoft .NET 技術代言人 林耀珍 Michael 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

2 林耀珍 現職 經歷 專業認證與專長 IT 顧問 第三波資訊 技術總監 育碁數位科技 總經理 第三波資訊 ERP專案經理
微軟 .NET 技術 、 軟體開發流程、資訊系統規劃、J2EE Microsoft MCSD/MCSE/MCDBA 物件導向技術,Rational OOAD 認證講師 Lotus Notes principle CLP/CLI 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

3 目標與對象 對象 技術平台的決策人員 軟體建構師 系統分析師 專案經理 應用程式開發人員 目標 介紹應用程式整合的技術 2018/11/24
.NET技術代言人 林耀珍 2004/06/29

4 大綱 Overview Web Services Architecture
Web Services Security Build EAI & B2B Application with BizTalk 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

5 .NET Enterprise Application Architecture
UI Components UI Process Components Data Access Components Business Workflows Business Components Users Business Entities Service Agents Service Interfaces Data Sources Services Operational Management Security Communication 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

6 The Vision – A Connected World
Partners Customers Suppliers Employees Partners Partners Customers Suppliers Employees Suppliers 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

7 The Problems Communication Protocol Data Schema Registration Security
Business Process Integration Document (Format & Semantics) Procedure Business Rules (Agreements) Transaction Compensation Human Workflow Integrartion …. 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

8 What is SOA? An architectural approach to creating systems built from autonomous services A service is a program you interact with via message exchanges Services are built to last Availability and stability are critical A system is a set of deployed services cooperating in a given task Systems are built to change Adapt to new services after deployment 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

9 Common Bus Web Service is the Foundation of SOA
Independent of Communication Protocols XML,SOAP,WSDL,UUDI This is then the promised architecture, with all lines at right angles and all data shared and no applications dupliacted 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

10 大綱 Overview Web Services Architecture
Web Services Security Build EAI & B2B Application with BizTalk 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

11 Web Services Architecture
Source: W3C Web Services Architecture Working Draft, August 2003

12 Requirements of Security
Integrity Non-Repudiation Authentication/Identity Authorization Confidentiality 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

13 Secure Communication Encrypts the entire message
SSL Security SSL Security Encrypts the entire message Sender must trust all intermediaries Restricts protocols that can be used 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

14 Secure Message End to end message security independent of transport
Supports multiple protocols and multiple encryption technologies Encrypt only parts of the message Sender need only trust endpoint 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

15 Web Services Security Architecture
Privacy Authorization Federation Trust Policy SecureConversation Security SOAP Foundation 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

16 Web Services Security The initial set of Web Services Security specifications completed OASIS Public Review in October 2003 now are OASIS Committee Approved Specifications OASIS Call For Vote is due March 31, 2004, at which time Web Services Security may become an OASIS standard The WS-Security specification was created as part of the Global XML Web Services Architecture (GXA) framework It was originally authored by Microsoft, IBM, and Verisign and was released in October 2001 Submitted to OASIS in June 2002 Security information can be username/password, X.509 certificate, Kerberos ticket (future), SAML assertion (future), XrML token (future), biometric information (future), etc.

17 Web Services Security A framework for building security protocols
Integrity Confidentiality Propagation of security tokens Supports end-to-end SOAP message security Supports multiple intermediaries Independent of underlying transport Support for pluggable algorithms Encryption, Digest, Signature, Canonicalization, Transforms 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

18 Security Tokens Tokens assert claims about identity, capability, privileges Unsigned Proof of Possession Username Signed Secret/Shared Key X.509 Kerberos Password Security Context SAML XrML 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

19 Authenticating With Tokens
Tokens carry claims that are backed by “proof of possession” Shared secret (password, symmetric key) Private key signed by trusted third-party service Authenticating involves checking for this knowledge Validating username token passwords Verifying the digital signature 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

20 Username token Simple method of conveying username
Password is used to generate a secret key for signing and encrypting Password can be sent as plaintext or digest WSE also provides built-in replay detection mechanism WSE automatically creates Windows Principal for plain-text passwords 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

21 Authorization With Tokens
WSE uses the SecurityToken.Principal to perform authorization Automatically set for UsernameToken and KerberosSecurityToken IPrincipal Basis of all code-level authorization and role-based security Support for custom IPrincipal types 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

22 Authorization Techniques
Programmatic … If token.Principal.IsInRole("Banker") Then ' Allow user to perform action End If … Policy-based WSE supports the use of Policy for Role-based Authorization Works without having to write code 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

23 Binary Tokens X509 Tokens Provides a way to encode X509 certificates
Supplied by Certificate Authority such as Windows Certificate Services Contains public key and digital signature from Certificate Authority Supports asymmetric encryption and signing 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

24 Digital Signatures For Integrity
Signing involves hashing the data and encrypting the hash value with a private key Parts of a message can be signed to ensure integrity Know that the message hasn’t been tampered with Know that only the sender could have sent it Unless specified, WSE signs a default set of message parts 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

25 XML Encryption Parts of a message can be encrypted to ensure confidentiality Plain text replaced with cipher text 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

26 Creating Security Contexts
Asymmetric keys are slow WS-SecureConversation defines a SecurityContext token (SCT) Based on a symmetric key Faster for multiple calls Request for SCT SCT Issued to client Series of messages signed with issued SCT Client Server 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

27 Creating Security Contexts
Context can be established in a variety of ways Using WS-Trust Having one party create the context Through negotiation STS may be located at the service or a separate endpoint WSE supports the automatic use of Secure Conversation Recommended if clients make > 2 calls 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

28 WS Security Policy Describes the security requirements of a web service, not with coding Policy Only accept x509 tokens from trusted CA Token must contain known subject Only callers who are in the Manager role 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

29 WS-SecurityPolicy Describes the security requirements of a web service
Provides a way of specifying Supported Token types Signing and encryption requirements Role-based authorization decisions Secure Conversation requirements 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

30 大綱 Overview Web Services Architecture
Web Services Security Build EAI & B2B Application with BizTalk 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

31 Business Integration Defined
Business Integration is enabling applications to communicate and work with other applications in an Automated and Efficient manner. EAI: Applications inside a company B2B: Applications between companies This usually involves converting data from one format to another Can be very complex process 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

32 Example Scenario: Purchase Order
ERP supplier Discuss requirements Approve with comments Status? Ship notice Initiate project Send changes Update PO approve Confirm PO Receive Invoice Close Project Close PO buyer Discuss comments Send PO Create PO 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

33 Application Integration An Idealized Picture
ERP Application .NET Application Packaged Application X SOAP J2EE Application Unix Application CICS Application Packaged Application Y AS/400 Application 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

34 Application Integration The Reality
ERP Application .NET Application Packaged Application X Business Process J2EE Application Unix Application CICS Application Packaged Application Y AS/400 Application 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

35 Platform For Business Integration
Clients Agents BizTalk Workflow (BPEL) and compenstation support for business processes Entity Services Activity Services Process Services BizTalk Orchestration supports highly dynamic activities So if that’s a service, what does and SOA look like? As we defined earlier, an SOA is an approach to accessing resources in which messages are routed between network interfaces In this picture, these cute triangles are services, with the little orange pipe segments representing interfaces Now let’s look at this picture piece by piece I like to think of an SOA as implementing four types of services Each with their own patterns, approach to state management, and value proposition to the organization It is important to note that different organizations will make different choices About which service types are valuable to them This is not and all-or-nothing proposition Service-orientation can be used where it offers good return on investment And coexist happily with other technologies within the organizational application portfolio Entity services, Which exist to encapsulate and control access to durable state Imagine a “customer” entity For technical reasons, customer information might be spread across a number of data stores For historical reasons, different subsidiaries might store customer data differently And for organizational reasons, partners are very unlikely to store customer data in exactly the same way Entity services can hide all of that Next, I like to think about activity services, Which implement common business transaction for your organization Some of these might be stateless, such as calculating sales tax, While others may transact change across several entity services For example, “RecordCustomerContact” might create a new “Contact” record And update both the “Customer” record And the record of the service representative who interacted with the customer Then there are Process services, Which implement the workflows that your organization uses to accomplish its business goals Much of the flow of any process will be internal to your organization But an SOA allows you to expose touchpoints to actors outside your organization That allow them to move processes forward Or just gain insight into the state of processes Finally there are Infrastructure services, Which provide common functionality to all of the other services, As well as the client software that call into your service portfolio Examples of infrastructure services include Authentication Authorization Reliable messaging Logging Exception management And so on These horizontal services are both common to the more application-specific services on the left And also common to many different organizations So there is a strong buy versus build bias when it comes to infrastructure services Since the platform vendors can leverage the cost of developing them across many customers While on the left, there will be more of a mix of buy and build Expect to see business application vendors to deliver more and more services as part of their product offerings BizTalk Document Schema and Transformation Legacy BizTalk Adapters Support integration Database Component Partner 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

36 A Business Process Platform
Communication with other applications Scalability support Human interaction with business processes Cross-application authentication Business process implementation Process monitoring Modifiable business rules Tools for working with trading partners BTS 2004 Engine Human Workflow Services Technical: Health and Activity Tracking Business: Business Activity Monitoring Enterprise Single Sign-On Business Rules Engine Business Activity Services 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

37 The BTS 2004 Engine Orchestrations MessageBox Incoming Outgoing
Message Path <XML Message> Incoming Message Outgoing Receive Adapter Receive Pipeline Send Pipeline Send Adapter Subscriptions MessageBox 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

38 Communication BTS 2004 Adapters
Standard adapters from Microsoft include Web Services adapter MQSeries adapter SAP adapter More Many third-party adapters are available, including EDI adapter PeopleSoft adapter Lots more 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

39 Communication Tools For building adapters Within Visual Studio.NET
Microsoft.BizTalk.Adapter.Framework namespace Within Visual Studio.NET Pipeline Designer Used to create custom pipelines BizTalk Editor Used to create XSD message schemas BizTalk Mapper Used to define mappings and XSLT transformations between message schemas 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

40 Orchestrations Define the operations in a business process using shapes Compile into standard .NET assemblies Example shapes: Decide: an if-then-else statement Loop: performs an action repeatedly Send: sends a message Receive: receives a message Parallel Actions: performs multiple operations in parallel Tools Visual Studio .NET & Visio 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

41 x Scopes Scope: supports transactions Atomic: recovery via rollback
Long-running: recovery via compensation Scope Y: Long-running ERP Application Scope X: Atomic CICS Application .NET Application 1) Update and commit BizTalk Server 2004 Engine 3) Compensate 2) Attempt update, fail x 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

42 Correlation Routes messages to an orchestration instance based on their contents Doesn’t require the orchestration to block waiting for a response message . . . PO# 5978 Purchase Order PO# 6013 BizTalk Server 2004 Engine . . . PO# 5978 Invoice PO# 6013 ERP Application 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

43 Process Implementation The Business Process Execution Language (BPEL)
BPEL Definition Generated Web Services BizTalk Server 2004 Other Integration Platform 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

44 Aggregating Services BizTalk Server 2004 Engine Web Services Clients
Packaged Application Unix Application J2EE Application CICS Application AS/400 Application Web Services Clients 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

45 The Business Rules Engine
For processes with stable rules For processes with volatile rules Orchestration Process and Rules State MessageBox Orchestration Business Rules Engine Rules Process State MessageBox 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

46 Tools for Business Rules
The Business Rule Composer allows a process’s rules to be expressed in a more natural way Example Business process terms Quantity Requested (from an order message) Maximum Allowed Order Quantity (set to 100) Business process rule if Quantity Requested is greater than Maximum Allowed Order Quantity, then send Order Rejected message 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

47 Process Monitoring Health and Activity Tracking (HAT) provides graphical access to information about orchestrations and messages, such as When an orchestration starts and ends When each shape within it is executed When each of its messages is sent and received What’s in each message Much more Tool: Health and Activity Tracking tool 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

48 Tracing Process 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

49 Business Activity Monitoring
Allows information workers to monitor business processes BizTalk Server 2004 Engine Tracking Monitored Events and Messages Microsoft Excel Other Clients Business Activity Monitoring (BAM) 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

50 An Example BAM View 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

51 Conclusions A service-oriented world is inevitable, but it implies
Connections to non-SOAP services Services for building business processes Web Services are the foundation for SOA BizTalk Server 2004 is a SOA platform for building, managing, and monitoring business processes In the world today In the service-oriented world to come 2018/11/24 .NET技術代言人 林耀珍 2004/06/29

52 Questions… Microsoft .NET 技術代言人 林耀珍 2018/11/24


Download ppt "Integrate Applications Using Web Services and BizTalk"

Similar presentations


Ads by Google