net web szolgáltatások
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 PresentationTRANSCRIPT
![Page 1: NET web szolgáltatások](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/6.jpg)
6
WS-Security Azonosítás
UserNameToken• ClearText (ez kell a windows-nak)• Digest
KerberosV5X509...
![Page 7: NET web szolgáltatások](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/16.jpg)
16
Példa
![Page 17: NET web szolgáltatások](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/17.jpg)
17
Példa
![Page 18: NET web szolgáltatások](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/18.jpg)
18
Példa
![Page 19: NET web szolgáltatások](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/19.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/20.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/21.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062519/56815228550346895dc06f5d/html5/thumbnails/22.jpg)
22
Utolsó fólia
Köszönöm a félévnyi kitartó
figyelmet