Podpora za strežnik aplikacij v DB2 za VM omogoča, da DB2 za VM deluje kot strežnik za zahtevnike aplikacij DRDA. Zahtevnik aplikacij, povezan s strežnikom aplikacij DB2 za VM, je lahko eno od naslednjega:
Za katerikoli zahtevnik aplikacij, povezan s strežnikom aplikacij DB2 za VM, strežnik aplikacij DB2 za VM zahtevniku aplikacij omogoča dostop do objektov baze podatkov (kot so tabele), ki so shranjeni lokalno na strežniku aplikacij DB2 za VM. Preden je mogoče vzpostaviti povezavo, mora zahtevnik aplikacij izdelati paket, ki na strežniku aplikacij DB2 za VM vsebuje stavke SQL.
Če želite, da bo strežnik aplikacij DB2 za VM obdelal zahteve porazdeljene baze podatkov, morate narediti naslednje:
Če želite, da bo strežnik aplikacij sprejemal zahteve porazdeljene baze podatkov, ga definirajte za lokalni komunikacijski podsistem in dodelite enkratni RDB_NAME.
Za definiranje strežnika aplikacij naredite naslednje:
NETID je za VTAM definiran kot zagonski parameter in vse porazdeljene zahteve iz zahtevnika aplikacij so pravilno usmerjene nanj. Strežnik aplikacij DB2 za VM ne nastavi NETID.
Strežnik aplikacij DB2 za VM ne določi, kateri prehod bo uporabljen za usmerjanje vhodnih porazdeljenih zahtev, ki jih pošlje zahtevnik aplikacij. To vedno krmili zahtevnik aplikacij. Če uporabljate zahtevnik aplikacij DB2 za VM, prehod določi komunikacijski imenik CMS s pomočjo oznak :luname in :tpn.
Če želite, da bo strežnik aplikacij DB2 za VM podpiral aktivnosti porazdeljene enote dela, mora zahtevnik aplikacij izbrati prehod AVS, ki je bil za VTAM definiran s parametrom SYNCLVL=SYNCPT. Preverite, ali je prehod AVS definiran tako, da podpira porazdeljene enote dela.
Ko izberete velikosti RU, omejitve sej in števce za krmiljenje takta, razmislite o vplivu, ki ga imajo te vrednosti na področje VTAM IOBUF.
ID sredstva (RESID) je izraz VM za ime transakcijskega programa. V okolju VM je običajno definiran kot alfanumerično ime, dolgo do 8 bajtov. Najbolje je, da definirate RESID, ki je enak kot ime strežnika, saj boste tako poenostavili upravljanje. Slika 34 kaže vzorčno datoteko imen RESID.
Slika 34. Zgled datoteke imen RESID
+--------------------------------------------------------------------------------+ | RESID NAMES A1 V 132 Trunc=132 Size=4 Line=1 Col=1 Alt=3 | |====> | |00001 :nick.MTLTPN | |00002 :dbname.MONTREAL_SALES_DB | |00003 :resid.SALES | |00004 | +--------------------------------------------------------------------------------+ |
Slika 33 kaže postavko komunikacijskega imenika, ki definira ta dbname in RESID (kot TPN). Če ime strežnika aplikacij ne more biti enako kot RESID, potem strežnik aplikacij DB2 za VM za omogočanje preslikave uporabi datoteko RESID NAMES. Ta preslikava je potrebna v naslednjih primerih:
Med namestitvijo se po privzetku uporabi ime strežnika, ki je v SQLDBINS EXEC podano kot RESID. Če želite v datoteki RESID NAMES izdelati postavko preslikave, za SQLDBINS podajte parameter RESID.
Če bazo podatkov zaženete z uporabo SQLSTART DB(ime_strežnika), DB2 za VM poišče ustrezni RESID in VM obvesti, da je to sredstvo, ki ga bo nadzoroval VM. Če v datoteki RESID NAMES ni najdena postavka, DB2 za VM privzame, da je RESID enak kot ime strežnika in to sporoči VM. Za dodatne informacije preberite priročnik DB2 for VM System Administration .
Strežnik aplikacij DB2 za VM morda nima nameščene podpore za DRDA. Za pripravo strežnika aplikacij DB2 za VM za komunikacije DRDA naredite naslednje:
Podrobnejše informacije lahko najdete v priročniku VM/ESA System Administration.
Ko zahtevnik aplikacij na strežnik aplikacij DB2 za VM usmeri zahtevo porazdeljene baze podatkov, morate upoštevati naslednjo problematiko v zaščiti:
V SQL in v LU 6.2 so končnim uporabnikom dodeljeni od 1- do 8-bajtni ID-ji. Ti ID-ji uporabnikov morajo biti enkraten v določenem operacijskem sistemu, ni pa nujno, da so enkratni v celotnem omrežju SNA. Za odpravljanje navzkrižij pri poimenovanju lahko DB2 za VM izbirno uporabi funkcijo za prevod ID-ja uporabnika, ki je na voljo v AVS, vendar samo pod naslednjimi pogoji:
Če je zahteva na strežnik usmerjena prek AVS z uporabo možnosti SECURITY=SAME, je zahtevan prevod ID-ja uporabnika AVS. Ukaz AGW ADD USERID, ki ga izdate na delovni postaji AVS, mora obravnavati zaščito za uporabnike, ki vzpostavijo povezavo prek določene oddaljene logične enote ali prehoda AVS. Za vse vhodne LU-je in ID-je uporabnikov, ki vzpostavijo povezavo z uporabo SECURITY=SAME, mora obstajati preslikava. Ukaz je prožen; sprejmete lahko vse ID-je uporabnikov iz določenega LU-ja ali na splošno vse oddaljene LU-je ali pa samo določen niz ID-jev uporabnikov iz določenega LU-ja.
Če za pooblastitev vhodnih (že preverjenih) ID-jev uporabnikov na lokalni delovni postaji AVS uporabite ukaz AGW ADD USERID, gostitelj ne izvede preverjanja veljavnosti. To pomeni, da pooblaščeni ID morda ne obstaja na gostitelju, vendar bo povezava kljub temu sprejeta.
Trenutno pooblastilo ID-ja uporabnika AVS lahko spremenite na dva načina:
Za zgled bomo uporabili enaka ID-ja uporabnikov v različnih mestih, ki kaže, kako lahko funkcija za prevajanje AVS razreši navzkrižja pri poimenovanju. Denimo, da v sistemu Toronto obstaja uporabnik z ID-jem JONES, v sistemu Montreal pa drug uporabnik z enakim ID-jem. Če želi uporabnik JONES iz sistema Montreal dostopiti do podatkov v sistemu Toronto, naslednja dejanja v sistemu Toronto preprečijo navzkrižje pri poimenovanju in uporabniku JONES iz sistema Montreal preprečijo uporabo pooblastil, ki so bila dodeljena uporabniku JONES iz sistema Toronto:
Ta dejanja lahko izvedete tudi v sistemu Montreal, če želite zagotoviti, da uporabnikJONES iz sistema Toronto pri dostopanju do oddaljenih podatkov v sistemu Montreal ne bo uporabljal pooblastil, ki so bila dodeljena uporabniku JONES iz sistema Montreal.
Ukazi AVS, ki podpirajo prevod ID-ja uporabnika, so opisani v priročniku VM/ESA Connectivity Planning, Administration and Operation.
LU 6.2 nudi tri glavne funkcije za zaščito omrežja:
Razlago o tem, kako se poda zaščita na ravni seje za DB2 za VM, lahko najdete v temi Zaščita omrežja. Strežnik aplikacij DB2 za VM uporablja zaščito na ravni seje na enak način kot zahtevnik aplikacij DB2 za VM.
Zahtevnik aplikacij lahko pošlje že preverjeni ID uporabnika (SECURITY=SAME) ali ID uporabnika in geslo (SECURITY=PGM). Če pošljete ID uporabnika in geslo, potem CP, RACF ali podoben izdelek preverijo njuno veljavnost s pomočjo imenika VM na gostitelju strežnika aplikacij. Če preverjanje veljavnosti ne uspe, bo povezovalna zahteva zavrnjena, sicer pa bo sprejeta. Če zahteva vsebuje samo ID uporabnika, jo DB2 za VM sprejme, ne da bi preveril veljavnost ID-ja uporabnika.
Opomba: | DB2 za VM ne nudi funkcije za šifriranje, ker VM/ESA ne podpira šifriranja. |
Strežnik aplikacij DB2 za VM preveri, ali ima ID uporabnika, ki ga je podal VM, pooblastilo CONNECT za dostopanje do baze podatkov, in zavrne povezavo, če tega pooblastila nima.
Kot lastnik sredstev baze podatkov strežnik aplikacij DB2 za VM krmili funkcije za zaščito baze podatkov za objekte SQL, ki se nahajajo na strežniku aplikacij DB2 za VM. Dostop do objektov, ki jih upravlja DB2 za VM, je nadzorovan prek nabora pooblastil, ki jih uporabnikom dodeli skrbnik sistema DB2 za VM ali lastnik določenega objekta. Strežnik aplikacij DB2 za VM krmili dva razreda objektov:
Če aplikacijo vnaprej obdelate na DB2 za VM, paket vsebuje stavke SQL iz uporabniškega programa. Ti stavki SQL so razvrščeni takole:
Če je končnemu uporabniku dodeljeno pooblastilo za izvajanje paketa, končni uporabnik samodejno dobi pooblastilo za izvajanje vseh stavkov statičnega SQL, vsebovanih v paketu. Tako končni uporabniki ne potrebujejo nobenih pooblastil tabele DB2 za VM, če paket vsebuje samo stavke statičnega SQL.
Strežnik aplikacij DB2 za VM lahko ta podsistem uporablja po potrebi. Če mora VTAM preveriti istovetnost imena LU-ja zahtevnika aplikacij, pokliče zaščitni podsistem, ki izvede preverjanje LU-ja partnerja. Odločitev za preverjanje LU-ja partnerja se opravi na osnovi vrednosti, ki je podana za parameter VERIFY stavka VTAM APPL za prehod, ki ga strežnik aplikacij DB2 za VM uporablja za sprejemanje vhodnih zahtev porazdeljene baze podatkov.
Zaščitni podsistem lahko pokliče tudi CP, ki preveri ID uporabnika in geslo, ki ju je poslal zahtevnik aplikacij. Če je zaščitni podsistem RACF in nimate profila sistema RACF, bo preverjanje izvedel RACF. Če imate profil sistema RACF, na primer RACFPROF, z naslednjimi navodili od RACF zahtevajte to preverjanje:
RALTER VMXEVENT RACFPROF DELMEM (APPCPWVL/NOCTL RALTER VMXEVENT RACFPROF ADDMEM (APPCPWVL/CTL SETEVENT REFRESH RACFPROF
Izbrati morate najustreznejši privzeti CHARNAME in CCSID za vašo namestitev. Z izbiro pravilnih vrednosti zagotovite integriteto predstavitve znakovnih podatkov in zmanjšate dodatno obremenitev, povezano s pretvorbo CCSID.
Če na primer do strežnika aplikacij DB2 za VM dostopajo samo lokalni uporabniki, katerih krmilniki terminalov so bili izdelani s kodno stranjo 37 in z naborom znakov 697 (CP/CS 37/697) za znake US ENGLISH, nastavite privzeti CHARNAME strežnika aplikacij na ENGLISH. To je zato, ker CP/CS 37/697 ustreza CCSID 37, ki ustreza CHARNAME ENGLISH.
Če se želite izogniti nepotrebni pretvorbi CCSID, izberite privzeti CCSID strežnika aplikacij, ki je enak kot CCSID zahtevnikov aplikacij, ki najpogosteje dostopajo do strežnika aplikacij.
Naslednji zgled kaže možno neskladje teh dveh ciljev:
Če je privzeti CHARNAME strežnika aplikacij nastavljen na ENGLISH, bo to ohranilo integriteto podatkov za lokalne zahtevnike aplikacij in pomenilo dodatno obremenitev zaradi pretvorbe CCSID za vse oddaljene zahtevnike aplikacij.
Če je privzeti CHARNAME strežnika aplikacij nastavljen na UK-ENGLISH, se boste s tem izognili dodatni obremenitvi, do katere pride zaradi pretvorbe CCSID za vse oddaljene zahtevnike aplikacij, vendar povzroči težave v integriteti podatkov za vse lokalne zahtevnike aplikacij--določeni znaki ne bodo pravilno prikazani na lokalnih zahtevnikih aplikacij; tako bo na primer angleški znak za funt prikazan kot znak za dolar.
Če želite prikazati trenutni CCSID sistema, opravite poizvedbo v tabeli SYSTEM.SYSOPTIONS. Privzeti CCSID strežnika aplikacij ima običajno vrednost CCSIDMIXED. Če je ta vrednost nič, ima privzeti CCSID sistema vrednost CCSIDSBCS. Pri vsakem zagonu baze podatkov se vrednosti CHARNAME, CCSIDSBCS, CCSIDMIXED in CCSIDGRAPHIC v tej tabeli ažurirajo na vrednosti, ki so uporabljene kot sistemski privzetki. Vrednosti v tej tabeli niso vedno sistemski privzetki. Uporabnik s pooblastilom DBA lahko spremeni te vrednosti, vendar tega ne priporočamo. Če želite spremeniti privzeti CCSID strežnika aplikacij, morate pri naslednjem zagonu strežnika aplikacij podati parameter CHARNAME iz SQLSTART EXEC. Za podrobnejše informacije preberite priročnik VM/ESA System Administration .
Za novo nameščeno bazo podatkov je privzeti CHARNAME strežnika aplikacij nastavljen na INTERNATIONAL, privzeti CCSID strežnika aplikacij pa je 500, vendar ta privzetek najbrž ni pravilen za vašo namestitev. Privzeti CHARNAME za preseljeni sistem je ENGLISH, privzeti CCSID pa 37.
Naslednji potrditveni seznam povzema korake, ki jih morate opraviti, če želite strežnik aplikacij DRDA omogočiti za komunikacije DRDA, začenši s predpostavko, da je sistem VM nameščen z ACF/VTAM kot načinom za dostop do teleobdelave, in da so definicije VTAM, potrebne za komuniciranje z oddaljenimi sistemi, kot so na primer definicije NCP, končane.