Zabezpečennie webových aplikácií
Zabezpečenie webových aplikácií
V predchádzajúcej kapitole sme opísali technologické a programové pozadie XML ASP.NET webových služieb. Pri vytváraní verejných webových služieb predstavuje ich bezpečnosť faktor, ktorým môžeme určovať ich kvalitu. Webové služby komunikujú s klientskymi aplikáciami prostredníctvom XML správ, samy o sebe nezabezpečujú ochranu prenášaných dát. Pokiaľ webová služba poskytuje citlivé informácie, napríklad bankové webové služby, webové služby zdravotných poisťovní, poprípade webové služby leteckých spoločností a iné, musí byť zabezpečená ochrana prenášaných dát. Musia byť vytvorené mechanizmy na identifikáciu klientov volajúcich webové služby, na ich autorizáciu a mechanizmy na zabezpečenie integrity a dôvernosti komunikácie.
Táto kapitola sa zaoberá práve autentifikáciou, autorizáciou klientov webových služieb ASP.NET a zabezpečením integrity a dôvernosti komunikácie. Tie predstavujú hlavné úrovne bezpečnosti.
Úrovne bezpečnosti
Všeobecne pri webových aplikáciách pri implementácii bezpečnosti je nutné zabezpečiť nasledovné [1] :
1. Autentifikáciu. To znamená, že najskôr musíme overiť identitu užívateľa, ktorý napríklad volá niektorú z metód webovej služby.
2. Autorizáciu. Na základe jeho identity sa musíme rozhodnúť, aké operácie bude môcť užívateľ vykonávať a k akým zdrojom bude mať prístup. Autorizácia zisťuje, na čo všetko má klient oprávnenie.
3. Utajenie. Počas komunikácie klientskej aplikácie s webovou službou musíme zabezpečiť ochranu prenášaných dát. Z toho dôvodu je nutné kryptovať prenosový kanál medzi klientskou aplikáciou a webovým serverom.
4. Integritu. Predstavuje ochranu prenášaných dát pred neoprávneným pozmenením neautorizovanými činiteľmi. Je realizovaná prostredníctvom digitálnych podpisov.
Začneme tým, že sa oboznámime s utajením a integritou komunikácie, aj keď prvým krokom pri vytváraní bezpečnej komunikácie je overenie klienta. Je to z dôvodu, že v kapitole 4 sa oboznámime s princípom certifikátov, ktoré predstavujú jednu z overovacích metód klientov. Autentifikácia klientov prostredníctvom certifikátov je rozobraná v samostatnej kapitole 5.3.