Zabezpečennie webových aplikácií
Obsah
V predchádzajúcej kapitole sme si 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é úrovni bezpečnosti.
Úrovne bezpečnosti
Všeobecne pri webových aplikáciách u implementácie bezpečnosti je nutné zabezpečiť nasledovné [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.
- 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.
- 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.
- Integrita. 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ím 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.