22
1 .NET web szolgáltatások WSE 2.0 BPEL Beadandó feladat A félév áttekintése Bilicki Vilmos [email protected] www.inf.u-szeged.hu/~bilickiv

NET web szolgáltatások

  • Upload
    hector

  • View
    27

  • Download
    0

Embed Size (px)

DESCRIPTION

.NET web szolgáltatások. WSE 2. 0 BPEL Beadandó feladat A félév áttekintése Bilicki Vilmos [email protected] www.inf.u-szeged.hu/~bilickiv. MCP vizsga lehetőség. http://www.microsoft.com/learning/mcp/mcp/ Javasolt vizsga: - PowerPoint PPT Presentation

Citation preview

Page 1: NET web szolgáltatások

1

.NET web szolgáltatások

WSE 2.0BPELBeadandó feladatA félév áttekintése

Bilicki [email protected]/~bilickiv

Page 2: NET web szolgáltatások

2

MCP vizsga lehetőség http://www.microsoft.com/learning/mcp/mcp/ Javasolt vizsga: Developing and Implementing Web

Applications with Microsoft Visual C# .NET and Microsoft Visual Studio .NET

http://www.microsoft.com/learning/exams/70-315.asp

Email: bilickiv….

Page 3: NET web szolgáltatások

3

Az előadás tartalma WSE 2.0

Újdonságok WS-Security

• UsernameToken• KerberosToken• X509Token

WS-Policy BPEL Beadandó feladat

Határidő Minta

• UDDI – telepítés, definiálás,...• Keresés UDDI-ben• Visual Studio UDDI támogatása• A szerver• Minta kliens

A speckoll. összefoglalója

Page 4: NET web szolgáltatások

4

WSE 2.0 Az újabb WS-* elemeket támogató Microsoft

keretrendszer A WSE 1.0 bővítése

WS-Routing -> WS-Addressing WS-Policy WS-Security – titkosítás, tartalom védelem TCP, processzek közötti kommunikáció használata TTL követelmények

Hozzávalók egy személyre: Web Services Enhancements 2.0 (

http://www.microsoft.com/downloads/details.aspx?FamilyId=FC5F06C5-821F-41D3-A4FE-6C7B56423841&displaylang=en

) UDDI használatához

• Windows SDK Core

Page 5: NET web szolgáltatások

5

WSE 2.0 Micorosoft.Web.Services2 névtér

(Microsoft.Web.Services2.dll) Regisztrálni kell a web.config fájlban

Page 6: NET web szolgáltatások

6

WS-Security Azonosítás

UserNameToken• ClearText (ez kell a windows-nak)• Digest

KerberosV5X509...

Page 7: NET web szolgáltatások

7

UserNameTokenusing System; using Microsoft.Web.Services2; using Microsoft.Web.Services2.Security.Tokens; namespace BasicWSEClient { class BasicWSE2ConsoleApp {

static void Main() { string name = Console.ReadLine(); Console.WriteLine("Enter password: "); string password = Console.ReadLine(); BasicWSEService.Service1Wse proxy = new BasicWSEService.Service1Wse(); proxy.Url = "https://myserver/basicWSE/Service1.asmx"; proxy.RequestSoapContext.Security.Tokens.Add( new UsernameToken(name, password, PasswordOption.SendPlainText)); Console.WriteLine(proxy.Hello(name)); } } }

Page 8: NET web szolgáltatások

8

Szerver oldal[WebMethod] public string Hello(string name) { SoapContext ctxt = RequestSoapContext.Current; foreach (SecurityToken tok in ctxt.Security.Tokens) if (tok is UsernameToken) {

UsernameToken user = (UsernameToken)tok; if (user.Username == name) { if (user.Principal.IsInRole( System.Net.Dns.GetHostName() + @"\Kings")) return "Hello, King " + name; return "Hello, " + name; } } return "Hello, Liar"; }

Page 9: NET web szolgáltatások

9

Saját felh. kötéspublic class MySecurityTokenManager : UsernameTokenManager { protected override string AuthenticateToken(UsernameToken token) { string pwd; switch(token.Username) { case "Simon":

pwd = token.Username+"-pwd"; token.Principal = new GenericPrincipal( new GenericIdentity(token.Username), new string[] {"SomeRole","SomeOtherRole"} );

break; case "Guest":

pwd = token.Username+"-pwd"; token.Principal = new GenericPrincipal( new GenericIdentity(token.Username), new string[] {"SomeRole"} );

break; default: pwd = base.AuthenticateToken(token); break; } return pwd; } }

Page 10: NET web szolgáltatások

10

WS-Policy A WS-Policy segítségével egyszerűvé teszi a

követelmények specifikálását Kódba rögzíteni a jogosultságokat nem nyerő Policy fájl

Mappings• endpoint

• Operation

• Request

• Response

• fault

• Default operation

Policies

Page 11: NET web szolgáltatások

11

Példa Policy <mappings>

<endpoint uri="http://www.develop.com/someapp/someservice.asmx">

• <operation requestAction="http://www.develop.com/someapp/someservice/someop">

• <request policy="#policy1" /> • <response policy="#policy2"/> • <fault policy="#policy3"/>

• </operation> • <defaultOperation>

• <request policy="#policy4" /> • <response policy="#policy5" /> • <request fault="#policy6" />

• </defaultOperation> </endpoint>

</mappings>

Page 12: NET web szolgáltatások

12

Példa Policy <policies xmlns:wsu= "http://docs.oasis-open.org/wss/

2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsp="http://schemas.xmlsoap.org/ws/2002/12/policy"> <wsp:Policy wsu:Id="policy1">

• <SecurityToken wsp:Usage="wsp:Required" xmlns="http://schemas.xmlsoap.org/ws/2002/12/secext">

• <TokenType> http://docs.oasis-open.org/wss/2004/01/ oasis-200401-wss-username-token-profile-1.0#UsernameToken </TokenType>

• </SecurityToken> </wsp:Policy> <wsp:Policy wsu:Id="policy2"> <!-- Policy assertions go

here --> </wsp:Policy> <policies>

Page 13: NET web szolgáltatások

13

BPEL4WS XML nyelv Elődei:

IBM• WSFL

Microsoft• XLANG

Üzleti folyamatok definiálása Web szolgáltatások összekapcsolása Üzleti folyamat

Egy új web szolgálatatást hoz létre egy adott web szolgáltatás halmazon értelmezett végrehajtási sorrend segítségével

• Kivétel kezelés• Hosszú tranzakciók kezelése

Hogyan használja fel a web szolgáltatásokat Hogyan nyújt web szolgáltatásokat

Page 14: NET web szolgáltatások

14

Hol, hogyan használhatjuk? Bpel szerverek

Microsoft BizTalk 2004 Oracle BPEL Process Manager IBM BPEL4WS Editor and Java Run-Time OpenStorm Service Orchestrator ...

Szolgáltatásai: Vezérlés (elágazás, hurok, ...) Aszinkron kommunikáció (join, source, target) Nem determinisztikság pick, onAlarm Hosszú tranzakciók (kompenzáció)

Page 15: NET web szolgáltatások

15

Folyamatot definiál Activity

Egyszerű• Invoke• Receive• Reply• Wait• Assign• Throw• Terminate• Empty

Komplex• Sequence• Switch• While• Pick• Flow

Partnerek Olyan szolgáltatás melyet meghív - portType1 Olyan szolgáltatás mely meghívja - portType2 A kettő kombinációja – serviceLink (szerepkörök)

Page 16: NET web szolgáltatások

16

Példa

Page 17: NET web szolgáltatások

17

Példa

Page 18: NET web szolgáltatások

18

Példa

Page 19: NET web szolgáltatások

19

A beadandó feladat Határidő 2005.január.10 A honlapon fenn lesz a helyszín valószínűleg

irnyi 227, de. 10 óra

Page 20: NET web szolgáltatások

20

Beadandó feladat Szerver

Adatbázis Szolgáltatások:

• Register• Remove• Update

Weboldal Kliens

Adatbázis Szolgáltatások:

• Tipp• Eredmeny

Weboldal• Bemutatkozás• Regisztráció (UDDI keresés, dinamikus)• Az algoritms leírása• Statisztika

Page 21: NET web szolgáltatások

21

A félév áttekintése SOA alapok .NET architektúra C# alapok ADO.NET ASP.NET XML XPATH XSL XSD WSDL SOAP WSE 1.0 WSE 2.0 BPEL

Page 22: NET web szolgáltatások

22

Utolsó fólia

Köszönöm a félévnyi kitartó

figyelmet