net web szolgáltatások

50
1 .NET web szolgáltatások Web szolgáltatás publikálás Web szolgáltatás biztonság Bilicki Vilmos [email protected] www.inf.u-szeged.hu/~bilickiv

Upload: daquan-neal

Post on 02-Jan-2016

19 views

Category:

Documents


1 download

DESCRIPTION

.NET web szolgáltatások. Web s zolgáltatás publikálás Web szolgáltatás biztonság Bilicki Vilmos [email protected] www.inf.u-szeged.hu/~bilickiv. Az el őadás tartalma. Web szolgáltatás publikálás Web szolgáltatás biztonság. Web szolgáltatások publikálása. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: NET web szolgáltatások

1

.NET web szolgáltatások

Web szolgáltatás publikálásWeb szolgáltatás biztonság

Bilicki [email protected]/~bilickiv

Page 2: NET web szolgáltatások

2

Az előadás tartalma Web szolgáltatás publikálás Web szolgáltatás biztonság

Page 3: NET web szolgáltatások

3

Web szolgáltatások publikálása Web szolgáltatások telepítése Az UDDI áttekintése Web szolgáltatás publikálása Az UDDI asználata

Page 4: NET web szolgáltatások

4

Web szolgáltatás telepítése Telepítéshez szükséges fájlok Manuális telepítése Windows Installer használata Demó

Page 5: NET web szolgáltatások

5

Web Szolgáltatás Fájlok Szükséges Nem Szük.

.sln, .vbproj, .csproj, .vsdisco, .webinfo

.resx

.vb, .cs

.xsd

\Web References folder and files

\bin directory and .dll(s)

.asmx

Web.config

Global.asax

.xml

Szükséga fájlok

Page 6: NET web szolgáltatások

6

Manuális telepítéseMikor érdemes manuális telepítést választani:

Ugyanarra a webszerverre telepítünkCsak teszteléscéljára telepítjükA web szolgáltatásunk egyszerű

Két módon telepíthetjük manuálisan:Fájlok bemásolásával A Visual Studio .NET Copy Project parancsával

IIS beállítások egyik esetben sem másolódnak

Page 7: NET web szolgáltatások

7

Windows Installer HasználataSegítségével könyen megoldhatjuk az alábbi

kezelhatjük az alábbi probléákat:Megosztot komponensekRégi COM komponensekIIS beálításokWeb alkalmazás erőforrások:üzenet sorok,

esemény naplók, teljestmény számlálókA Visual Studio .NET Web Setup projekttel

tudunk telepítő készletet készíteni

Page 8: NET web szolgáltatások

8

1. DEMÓ MSI készítése, használata

Page 9: NET web szolgáltatások

9

UDDIUDDI

Web Service Provider

Web Service Provider Web Service

ConsumerWeb Service Consumer

Publish Find

Bind

InternetInternet

Az UDDI áttekintése Mi az UDDI? Miért érdemes használni? Web szolgáltatások

publikálása intraneten Az

UDDI használatának áttekintése

UDDI adat struktúrák

Az SDK telepítése

Hivatkozások az UDDI DDL-re

Page 10: NET web szolgáltatások

10

Mi az UDDI? Specifikációk halmaza

Elosztott, web alapú információ tárat írnak le- UDDI programozói API specifikáció- UDDI adat struktúra specifikáció

UDDI adatár implementációkA specifikációk

implementációi

Page 11: NET web szolgáltatások

11

Miért érdemes UDDI-t használni? Az UDDI előnyei

Leírja és összefoglalja azokat a szabályokat melyeket az üzleti partnereknek követniük kell az integráció érdekében

Láthatóvá, elérhetővé teszi a céget más cégek számára Egyszerűbb és dinamikusabb üzletvitel

Az UDDI álltal szállított információk Üzelt sepcifikus Web szolgáltatás A Web szolgáltatás végpontjai A jelenlegi kötési mehanizmus a végponton

Page 12: NET web szolgáltatások

12

Web szolgáltatás publiálása Megoldások

UDDI szolgáltatások megvalósítása Windows Server 2003 segítségével

Rögzítet végpontok

Page 13: NET web szolgáltatások

13

Az UDDI használatának áttekintése

22

1155

A fejlesztő elkészti és telepíti a web szolgáltatástA fejlesztő elkészti és telepíti a web szolgáltatást11

A fejlesztő regisztrálja és kategorizálja a szolgáltatástA fejlesztő regisztrálja és kategorizálja a szolgáltatást22

A web szolgáltatás fogyasztó rákeres az adott szolgáltatás típusraA web szolgáltatás fogyasztó rákeres az adott szolgáltatás típusra33

A találatok közül a fogyasztó kiválasztja a legmegfelelőbbetA találatok közül a fogyasztó kiválasztja a legmegfelelőbbet44

A web szolgáltatás készítő készít egy olyan alkalmazást amely közvetlenül fogyaztja a web szolgáltatástA web szolgáltatás készítő készít egy olyan alkalmazást amely közvetlenül fogyaztja a web szolgáltatást55

Pricing Web ServicePricing Web Service

UDDI ServicesUDDI Services 3344

Page 14: NET web szolgáltatások

14

UDDI Adat Struktúrák

tModel: A szolgáltatás specifikációk leírásaitModel: A szolgáltatás specifikációk leírásai

Binding: Techniaki információ egy kötési pontrólBinding: Techniaki információ egy kötési pontról

Service: Egy adott ajánlat leírása Service: Egy adott ajánlat leírása

Name, description and categorization of the service

Name, description and categorization of the service

Business: Információk a szolgáltatást nyújtó entitásrólBusiness: Információk a szolgáltatást nyújtó entitásról

Name, contact, description and categorization of the provider

Name, contact, description and categorization of the provider

Access point(s) for the serviceAccess point(s) for the service

Pointer to a WSDL filePointer to a WSDL file

Page 15: NET web szolgáltatások

15

Az UDDI SDK telepítése A Microsoft UDDI szoftver fejlesztő csomag

(SDK)segítségével a klinesek UDDI szolgáltatásokat tudnak asználniSaját UDDI az intranetenKözös az extranetenPublikusan az Interneten

Az UDDI SDK 2.0 telepítése AZ UDDI SDK névterek

Page 16: NET web szolgáltatások

16

Hivatkozás az UDDI névterekre A Microsoft.Uddi.dll fájl tartalmazza Ezeket kell használnunk

using Microsoft.Uddi;using Microsoft.Uddi.Businesses;using Microsoft.Uddi.Extensions;using Microsoft.Uddi.Services;using Microsoft.Uddi.TModels;

using Microsoft.Uddi;using Microsoft.Uddi.Businesses;using Microsoft.Uddi.Extensions;using Microsoft.Uddi.Services;using Microsoft.Uddi.TModels;

ExampleExample

Page 17: NET web szolgáltatások

17

Web szolgáltatás telepítése Web szolgáltatás konfigurálása Web szolgáltatás publikálása Windows Server

2003 UDDI Szolgáltatások segítségével Web szolgáltatás publikálása a UDDI

varázslóval Web szolgáltatás publikálása programból

Page 18: NET web szolgáltatások

18

Web szolgáltatás konfigurálása A felderítés konfigurálása Engedélyek és a biztonsági szabályok Szerelvények konfigurálása Web szolgáltatás testreszabása (lokalizálása)

Page 19: NET web szolgáltatások

19

Windows Server 2003 UDDI Szolgáltatások

Page 20: NET web szolgáltatások

20

UDDI Publikáló varázsló

Page 21: NET web szolgáltatások

21

Publikálás programból

Lépések:Lépések:

Kapcsolódás az UDDI adattárhozKapcsolódás az UDDI adattárhoz11

Web szolgáltatás hozzáadása a SaveService osztállyalWeb szolgáltatás hozzáadása a SaveService osztállyal44

Egy business objektum hozzáadása a SaveBusiness osztályalEgy business objektum hozzáadása a SaveBusiness osztályal33

Egy tModel hozzáadása a SaveTModel osztály segítségévelEgy tModel hozzáadása a SaveTModel osztály segítségével22

Page 22: NET web szolgáltatások

22

Az UDDI használata UDDI adatár felderítése Kapcsolódás UDDI adattárhoz Web Service keresése

Page 23: NET web szolgáltatások

23

UDDI adattárak felderítése Az Active Directory segítségével a saját UDDI

szervereket felderíthetjükA statikus UddiSiteDiscovery objektum Find

metódusa segítségével egy UddiSiteLocation objektum tömböt kapunk vissza

Minden UddiSiteLocation objektum magába foglalja a hozzáférési pontokat az azonosítási stílusokal és leírásokkal együtt

Page 24: NET web szolgáltatások

24

Kapcsolódás UDDI adatárhoz Az UddiConnection objektum két azonosítási

megoldást támogat: Windows Integrált Azonosítást

Az aktulis felhasználó adatait használja fel Ez az alapértelmezett

UDDI AzonosításBe kell álltani a felhasználói jelszót és

témaszámot

Page 25: NET web szolgáltatások

25

Web szolgáltatás keresése Üzlet keresése Kötési információk letöltése Web szolgáltatás címzése

Page 26: NET web szolgáltatások

26

Web szolgáltatás és biztonság Biztonsági kérdések áttekintése Beépített azonosítás SOAP fejlécek használata saját azonosításhoz Szerep alapú biztonság Kóda alapú biztonság Titkosítás

Page 27: NET web szolgáltatások

27

Biztonság átekintése Azonosítás vs. Jogosultság keelése Azonosítás típusai Jogosultság kezelés típusai Titkosítási megodások

Page 28: NET web szolgáltatások

28

Azonosítás vs. Jogosultság kezelés

AzonosításA felhasználó identitásának ellenőrzéseAzonosító hatóságok segítségével történik

Jogosultság kezelésA már azonosított felhasználó jogosultságának

ellenőrzése Azonosítás utn történikA felahasználó azonosságán alapul

Page 29: NET web szolgáltatások

29

Azonosítás típusai

IIS azonosításASP.NET azonosításŰrlap alapú azonosításPassport azonosításSaját SOAP fejlécek használata

IIS azonosításASP.NET azonosításŰrlap alapú azonosításPassport azonosításSaját SOAP fejlécek használata

Page 30: NET web szolgáltatások

30

Engedélykezelés típusai

Windows NT biztonságSzerep alapú iztonságKód alapú biztonságASP.NET alkalmazás beállításai

Windows NT biztonságSzerep alapú iztonságKód alapú biztonságASP.NET alkalmazás beállításai

Page 31: NET web szolgáltatások

31

Titkosítási megoldások

Mit szeretnénk titkosítani?Mit szeretnénk titkosítani?

Az egész üzenetet,Csak a törzset vagy a fejlécetCsak kiválasztot üzenetekeParticionálás

Az egész üzenetet,Csak a törzset vagy a fejlécetCsak kiválasztot üzenetekeParticionálás

Megoldások:Megoldások:

SSLSOAP kiterjesztések

SSLSOAP kiterjesztések

Page 32: NET web szolgáltatások

32

Beépítet azonosítás Egyszreű és kivonatolt azonosítás Integrált Windows Azonosítás IIS azonosítás

Page 33: NET web szolgáltatások

33

Egyszerű és kivonatolt azonos. Egyszerű azonosítás

Az IIS bekéri a név/jelszó párostTitkosítás nékül küldik átSSL használata megoldja a problémát

Kivonatolt azonosításA bizalmas adatok kivonatolva küldik átCsak a HTP 1.1-es kliensek támogatják

Page 34: NET web szolgáltatások

34

Integrált Windows Azonosítás Tulajdonságai

Rossz eetben NTLM azonoasításJó esteben Kerberos azonosítás

KorlátokNem windows....HTTP proxy nem értiTűzfalakon újabb portokat kell kinyitni

Page 35: NET web szolgáltatások

35

IIS azonosítás Beállításai ASP.NET web szolgáltatás beállításai A felhasználó azononosság kezelése web

szolgáltatásban Bizonyítékok prezentálása

IISIIS

Page 36: NET web szolgáltatások

36

Saját SOAP fejlécek használata SOAP saját fejlécek használata a web

szolgáltatás szolgáltatóban SOAP saját fejlécek használata a web

szolgáltatás fogyasztóban

Web Service ConsumerWeb Service ConsumerWeb ServiceWeb Service

Page 37: NET web szolgáltatások

37

SOAP fejléc Web szolgáltatásban

Teendők:Teendők:

Származtassuk osztályunkat a SoapHeader-ből Származtassuk osztályunkat a SoapHeader-ből 11

Adjuk hozzá a SoapHeader attribútumotAdjuk hozzá a SoapHeader attribútumot33

Adjunk hozzá publikus mezőt a SoapHeader-ből származtatott osztályhozAdjunk hozzá publikus mezőt a SoapHeader-ből származtatott osztályhoz22

Page 38: NET web szolgáltatások

38

SOAP fejlécek WSDL-ben Web szolgáltatás proxy-k és SOAP fejlécek SOAP fejlécek használata web szolgáltatásokban

SOAP fejléc, fogyasztóban

Web Service ConsumerWeb Service Consumer

Page 39: NET web szolgáltatások

39

Szerep alapú azonosítás Azonosságok Principals A WindowsIdentity és WindowsPrincipal

objektumok használata A GenericIdentity és GenericPrincipal

objektumok használata Azonosítás és jogosultság kezelés HttpModul-

lokban

Page 40: NET web szolgáltatások

40

Azonosságok

WindowsIdentityWindowsIdentity

GenericIdentityGenericIdentity

Custom identityCustom identity

IIdentity

Page 41: NET web szolgáltatások

41

Egyedek Az egyed azt a környezetet jelenti melyben

fut Szerepek:

Egyedk olyan halmaza melyek egyforma jogokal rendelkeznek

Windows egyed Álltalános egyed Saját egyed Egyedek és hívási

kontextus

Security contextSecurity context

Page 42: NET web szolgáltatások

42

Using WindowsIdentity és WindowsPrincipal objektumok

Az Identity objektumok Name paraméterének használata a kód hozzáférés szabályozásához

A IsInRole metódus használata

ExampleExample

ExampleExample

If User.Identity.Name = "CONTOSO\Fred" Then' Permit access to some code.If User.Identity.Name = "CONTOSO\Fred" Then' Permit access to some code.

If User.IsInRole("CONTOSO\Administrators") Then' Permit access to some code.If User.IsInRole("CONTOSO\Administrators") Then' Permit access to some code.

Page 43: NET web szolgáltatások

43

A GenericIdentity és a GenericPrincipal objekumok használata

GenericIdentity objektum létrehozása

GenericPrincipal objektum létrehozása

A jelenlegi egyed elmentése

ExampleExample

ExampleExample

ExampleExample

Dim MyIdentity As GenericIdentity MyIdentity = New GenericIdentity("User1")

Dim MyIdentity As GenericIdentity MyIdentity = New GenericIdentity("User1")

Dim MyStringArray As String() = {"Manager", "Teller"}Dim MyPrincipal As

New GenericPrincipal(MyIdentity, MyStringArray)

Dim MyStringArray As String() = {"Manager", "Teller"}Dim MyPrincipal As

New GenericPrincipal(MyIdentity, MyStringArray)

Dim save As GenericPrincipal = Thread.CurrentPrincipal Dim save As GenericPrincipal = Thread.CurrentPrincipal

Page 44: NET web szolgáltatások

44

HttpModules használata HttpApplication események és a HttpModules Azonosítás HttpModules segítségével Jogosultságkezelés

Page 45: NET web szolgáltatások

45

Kód biztonság Kód biztonság alapok Kód itonság és ASP.NET

Page 46: NET web szolgáltatások

46

Kód alapú biztonság Bizonyíték alapú bitonság Kód hozzáférés jogosultságok Kód csoportok Szabály szintek Nevesített jogosultság halmazok

Page 47: NET web szolgáltatások

47

Kód alapú biztonság Helyi vs. ISP telepítés Kód alapú jogosultságok Engedélyek kérése a kódban

RequestMinimumRequestOptionalRequestRefused

Page 48: NET web szolgáltatások

48

SSL asználata X.509 digitális bizonyítányok Hogyan engedélyezzük?

IISIIS

Page 49: NET web szolgáltatások

49

Using Custom SOAP Extensions

The DESCryptoServiceProvider class The CryptoStream class Encryption using SOAP extensions

Page 50: NET web szolgáltatások

50

A következő előadás tartalma WS-profilok