0% found this document useful (0 votes)
31 views

Best Practices For Building Web Services With Visual Studio: Sanguan Thammarojsakul

Best Practises for Web Sevices with Visual Studio
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views

Best Practices For Building Web Services With Visual Studio: Sanguan Thammarojsakul

Best Practises for Web Sevices with Visual Studio
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 28

Best Practices for

Building Web Services


with Visual Studio® .NET

Sanguan Thammarojsakul
Microsoft MVP - .NET
 
Department of Computer Science,
Faculty of Science and Technology
Assumption University of Thailand
What we will cover
 ASP .NET Web Services
 ACT
 SOAP Security
 Global XML Web Services Architecture
(GXA)
 scalability, interoperability, reliability, and
security
Session Prerequisites
 Familiarity with .NET Programming
 Know Visual Basic® .NET
 Familiar with ASP .NET

Level 300
Agenda
 Architecture of Web Services
 Testing Web Services
 Securing SOAP
 Web Services in the Enterprise
Architecture of Web Services
Open Middle Tier Implementation
 What is a Web Service?
 A website without the user interface
 A method for defining interfaces above the
transport protocol
 XML Interoperability
 Web Services support 4 protocols
 Http Get - Interoperable
 Http Post - Interoperable
 Http SOAP - Interoperable
 Import as a DLL for an object interface - .NET
Architecture of Web Services
Implementing XML Services
 <WebService(Namespace :=
"http://msdn.microsoft.com/DevT1-46")>
 Declares the interface, indicates that the class define
is a web service
 Inherits System.Web.Services.WebService
 Parent class for all web services in .NET
 <WebMethod()>
 Each method which is exposed as part of the service
 Return values can be supported in any request forma
but Output parameters are only supported in SOAP
Architecture of Web Services
Service Discovery
 UDDI: Universal Description, Discovery
and Integration
 Design time specification for the discovery of
services and communication of their interface
 Does not define the service implementation
and protocol details.
 Complemented by WSDL
 Managed by an industry-wide consortium; for
details visit http://uddi.org
Agenda
 Architecture of Web Services
 Testing Web Services
 Securing SOAP
 Web Services in the Enterprise
Testing Web Services
Default ASMX Pages
 Visual Studio creates a default test frame
for each web service
 Accessible from the <service>.asmx page
 The automated page only supports and
test the http Get protocol
 Can act as the starting point for both
functional and performance testing
Testing Web Services
Performance Testing
 Application Center Test
 Allows for the automated execution of web
based resources using VB Scripts
 Two versions
 Full version in Application Center Server
 Developer Version in Visual Studio .NET
Enterprise Architect edition
 Produces XML based results
 Supports Side by Side Comparison
 Integrated with Performance Counters for
collection of Transaction Cost Analysis
data
Testing Web Services
Transaction Cost Analysis
Transaction Cost Analysis Equation

Cycles = N * S * avg (Pt) / avg(Rps)


Where:
 N = Number of Processors
 S = Speed of Processors
 Pt = System: % Total Processor Time
 Rps = ACT ASP Requests per second
 Cycles = Average CPU cycles
Demonstration 1
Transaction Calculator
Service
Run the T_Calc Service
Create a Simple ACT Test
Run a Custom ACT Test
Agenda
 Architecture of Web Services
 Testing Web Services
 Securing SOAP
 Web Services in the Enterprise
Securing SOAP
Authentication & SSL
 Authentication is supported
 Selected from Internet Services Manager
 NTLM and Basic authentication are available
 Use: New Net.NetworkCredential()
 Authentication does not protect data
 To protect data can use SSL
 From Browser preface call with https://
 From Code modify <service>.url property to
include https://
 Https is transport specific
Securing SOAP
Encoding & Encryption
 UTF-8 Encoding
 Can be used for the contents of a SOAP
Message
 Allows for the inclusion of binary data
 Encryption
 .NET supports several forms of encryption
 Can be used to protect data without relying
on transport protocol
 Requires key synchronization
Demonstration 2
Authentication/Security
Create a service requiring
Authentication
Create a Windows Form Client
Call a Service that Encodes
response Data
Agenda
 Architecture of Web Services
 Testing Web Services
 Securing SOAP
 Web Services in the Enterprise
Web Services in the Enterprise
Messaging Infrastructure

 Global XML Services Architecture (GXA)


 GXA has four key specifications to date
 WS-Security
 Credential exchange, message integrity, and
message confidentiality
 WS-License
 Encoding for common license formats
Web Services in the Enterprise
Messaging Infrastructure
 WS-Referral
 Partition URL namespaces between nodes
 WS-Routing
 Route messages across intermediate SOAP
nodes
 GXA is still under development as an
industry wide standard.
 Other specifications may be added as the
standard develops.
Web Services in the Enterprise
SOAP Extensions
 SOAP Extensions
 Added to the SOAP envelope
 Provide a generic means of implementing
additional capabilities.
 .NET SoapExtension
 System.Web.Services.Protocols.SoapExtension
 Will be the core of implementing GXA
Session Summary

 Use Web Services as Middleware


 Use ACT for lifecycle testing support
 Use .NET’s built in mechanisms for
securing web services
 SOAP Extensions
For More Information…
 MSDN Web site at
 http://msdn.microsoft.com/webservices
 WebServices Specifications
 http://msdn.microsoft.com/library/default.asp?
url=/library/en-
us/dnsrvspec/html/wsspecsover.asp
 Reliable XML Web Services
 http://msdn.microsoft.com/library/default.asp?
url=/library/en-us/dnexxml/html/xml11192001.asp
 Using SOAP Extensions for Encryption
 http://msdn.microsoft.com/library/default.asp?
url=/library/en-us/dnaspnet/html/asp09272001.asp
For More Information…
 Transaction Cost Analysis
 http://www.microsoft.com/applicationcente
r/techinfo/planning/2000/wp_tca.asp
 Global XML Web Services Architecture
 http://www.gotdotnet.com/team/XMLwebse
rvices/gxa_overview.aspx
 GotDotNet.com
MS Press
Essential Resources for Developers

To find the latest developer related titles visit


www.microsoft.com/mspress
Training
Training Resources for Developers
 Developing XML Web Services Using Visual C#
 Course #2524
 Building ASP.NET Applications
 Course #2063
 Programming with Microsoft® Visual Basic .NET
 Course #2373

To locate a training provider for this course, please access

mcspreferral.microsoft.com/default.asp
Microsoft Certified Technical Education Centers (CTECs)
are Microsoft’s premier partners for training services
MSDN
Essential Resources for Developers
Subscription Library, OS, Professional, Enterprise,
Services Universal Delivered via CD-ROM, DVD, Web

Online MSDN Online, MSDN Flash


Information

Training & MSDN Training, Tech-Ed, PDC,


Events Developer Days, MSDN/Onsite Events

Print MSDN Magazine


Publications MSDN News

Membership MSDN User Groups


Programs
MSDN Subscriptions
THE way to get Visual Studio .NET
Visual Studio .NET MSDN Subscriptions
Enterprise Architect
• Software and data modeling MSDN Universal
• Enterprise templates $2799 new
• Architectural guidance $2299 renewal/upgrade

Enterprise Developer
• Enterprise lifecycle tools MSDN Enterprise
• Team development support $2199 new
• Core .NET Enterprise $1599 renewal/upgrade

NEW
Servers

Professional
• Tools to build applications MSDN Professional
and XML Web services for $1199 new
Windows and the Web $899 renewal/upgrade
Where Can I Get MSDN?
 Visit MSDN Online at
msdn.microsoft.com
 Register for the MSDN Flash Email
Newsletter at
msdn.microsoft.com/flash
 Become an MSDN CD Subscriber at
msdn.microsoft.com/subscriptions
 MSDN online seminars
msdn.mircosoft.com/training/seminars
 Attend More MSDN Events

You might also like