Kupeza Mauthenga kwa Ogwiritsa Ntchito ndi Maudindo mu SQL

Chitetezo ndi chofunikira kwambiri kwa oyang'anira deta pofuna kuteteza gigabytes awo a bizinesi yofunikira ya bizinesi kuchokera pamaso a anthu akunja osaloledwa ndipo oyang'anira akuyesera kudutsa ulamuliro wawo. Mapulogalamu onse ogwirizana ndi maofesi ogwira ntchito m'mabanja amapereka njira zina zotetezera zowonetsera kuti zitheke. Zimachokera ku chitetezo chophweka chomwe chinaperekedwa ndi Microsoft Access kwa makina ogwira ntchito / mawonekedwe omwe amathandizidwa ndi zida zapamwamba zogwirizana monga Oracle ndi Microsoft SQL Server. Nkhaniyi ikukamba za njira zopezera chitetezo zomwe zimapezeka pazinthu zonse zomwe zimagwiritsa ntchito Language Structure Query (kapena SQL ). Palimodzi, tidzatha kuyendetsa kayendetsedwe ka deta ndikuonetsetsa chitetezo cha deta yanu.

Ogwiritsa ntchito

Zotsatira zochokera pa seva zonse zimathandizira lingaliro logwiritsa ntchito lofanana ndi limene linagwiritsidwa ntchito mu machitidwe opanga makompyuta. Ngati mumadziwana ndi olemba ntchito / gulu lomwe likupezeka mu Microsoft Windows NT ndi Windows 2000, mudzapeza kuti magulu omwe amagwiritsidwa ntchito ndi gulu la SQL Server ndi Oracle ali ofanana kwambiri.

Ndikokulimbikitsidwa kwambiri kuti mupange makaunti anu ogwiritsira ntchito osungirako malonda kwa munthu aliyense amene angapezeke ku deta yanu. Ndizothekadi kugawana ma akaunti pakati pa osuta kapena kungogwiritsa ntchito sewero limodzi la osuta pa mtundu uliwonse wa wogwiritsa ntchito amene akufuna kupeza malo anu osungirako zinthu, koma ndikulepheretsa chizoloƔezi ichi ku zifukwa ziwiri. Choyamba, izo zidzathetsa munthu aliyense payekha-ngati wogwiritsa ntchito kusintha kwa deta yanu (tiyeni tizinena mwa kudzipatsa yekha $ 5,000), simungathe kuzibwezera kwa munthu wina kudzera muzitsulo zofufuza. Komanso, ngati wogwiritsa ntchito wina amachoka ku bungwe lanu ndipo mukufuna kuchotsa mwayi wake kuchokera ku database, mudzakakamizika kusintha mawu omwe ogwiritsa ntchito onse akudalira.

Njira zopangira makasitomala a osuta zimasiyana kuchokera pa pulatifomu kupita ku pulatifomu ndipo muyenera kuwona malemba anu enieni a DBMS kuti awonetseni momwemo. Ogwiritsa ntchito Microsoft SQL Server ayenera kufufuza ntchito ya sp_adduser ndondomeko yosungidwa. Oracle database administrators adzapeza lamulo lopanga CREER USER. Mukhozanso kuyesa kufufuza njira zina zowonjezera. Mwachitsanzo, Microsoft SQL Server imathandiza kugwiritsa ntchito Windows NT Integrated Security. Pansi pa ndondomeko iyi, ogwiritsa ntchito amadziwika ku databata ndi akaunti zawo za Windows NT NT ndipo safunikanso kulowa muyiti yowonjezera yodzitumizila ndi mawu achinsinsi kuti mufike ku deta. Njirayi imakhala yotchuka kwambiri pakati pa olamulira azinthu chifukwa amasiya ntchito yowongolera akaunti kwa ogwiritsira ntchito makanema ndipo zimapatsa mwayi womasulira wina womaliza.

Ntchito

Ngati muli pamalo omwe muli ochepa ogwiritsira ntchito, mwinamwake mukupeza kuti kupanga makina a osuta ndi kuwapatsa zilolezo mwachindunji kwa iwo ndikwanira pa zosowa zanu. Komabe, ngati muli ndi ogwiritsa ntchito ochulukirapo, mosakayikira mudzakhumudwa ndi kusunga ma akaunti ndi zilolezo zoyenera. Pofuna kuchepetsa vutoli, zida zogwirizana zimathandizira lingaliro la maudindo. Udindo wamtunduwu umagwira ntchito mofanana ndi magulu a Windows NT. Maofesi a anthu apatsidwa udindo (s) ndi zilolezo zimaperekedwa ku ntchito yonse m'malo mowerengera akaunti. Mwachitsanzo, tikhoza kupanga gawo la DBA ndikuonjezerani maofesi a ogwira ntchito kuntchitoyi. Tikachita izi, tikhoza kupereka chilolezo kwa olamulira onse omwe alipo (ndi am'tsogolo) mwa kugawira chilolezo cha ntchitoyi. Apanso, njira zowonetsera maudindo zimasiyanasiyana kuchokera pa pulatifomu kupita ku nsanja. Otsogolera a MS SQL Server amayenera kufufuza njira yosungidwa ya sp_addrole pamene Oracle DBAs ayenera kugwiritsa ntchito chigwirizano cha CREATE ROLE.

Kupatsa Zilolezo

Tsopano popeza tawonjezera ogwiritsa ntchito ku database yathu, ndi nthawi yoti tiyambe kulimbikitsa chitetezo mwa kuwonjezera zilolezo. Gawo lathu loyamba lidzakhala kupereka zilolezo zoyenera zachinsinsi kwa ogwiritsa ntchito athu. Tidzachita izi pogwiritsa ntchito mawu a SQL GRANT.

Pano pali chiganizo cha mawu akuti:

KUKHALA
[ON ]
KU
[NDI MTIMA WOTSATIRA]

Tsopano tiyeni tiwone mawu awa mzere. Mzere woyamba, GRANT , umatilola ife kufotokozera zopezeka pa tebulo zomwe tikupereka. Izi zikhoza kukhala zilolezo zamasamba (monga SELECT, INSERT, UPDATE ndi DELETE) kapena zivomezi zachinsinsi (monga CREATE TABLE, ALTER DATABASE ndi GRANT). Chilolezo choposa chikhoza kuperekedwa m'mawu amodzi a GRANT, koma zovomerezeka pamasamba ndi zovomerezeka zamtunduwu sizingagwirizane ndi mawu amodzi.

Mzere wachiwiri, ON

, umagwiritsiridwa ntchito kufotokozera tebulo lokhudzidwa ndi zilolezo zamasamba. Mzerewu sungalephereke ngati tikupereka zilolezo zamakalata. Mzere wachitatu umatanthauzira wosuta kapena udindo umene wapatsidwa zilolezo.

Pomalizira, mzere wachinayi, NDI MTIMA WABWINO, ndizosankha. Ngati mzerewu uli m'ndondomeko, wogwiritsa ntchitoyo amavomerezedwa amavomerezanso kupereka zilolezo zomwezo kwa ogwiritsa ntchito ena. Tawonani kuti NKHANI YOPHUNZIRA simungathe kufotokozedwa pamene zilolezo zimapatsidwa ntchito.

Zitsanzo

Tiyeni tione zitsanzo zingapo. Pa zochitika zathu zoyambirira, taposachedwapa timagula gulu la opanga ma data 42 omwe angakhale akuwonjezera ndikusunga ma rekodi a makasitomala. Afunika kuti athe kupeza zambiri mu tebulo la Amalonda, kusintha mauthengawa ndi kuwonjezera zolemba zatsopano pa tebulo. Iwo sayenera kuthetsa zonse kuchokera ku database. Choyamba, tifunikira kupanga matelogalamu a munthu aliyense payekha ndikuwonjezera zonse ku gawo latsopano, DataEntry. Kenaka, tiyenera kugwiritsa ntchito mawu otsatirawa a SQL kuti tiwapatse chilolezo choyenera:

SANKHANI, SUNGANI, ZAMBIRI
ON Otsatsa
TO DataEntry

Ndipo ndizo zonse zomwe ziripo kwa izo! Tsopano tiyeni tione nkhani pamene ife tikugawira zilolezo zamagulu a database. Tikufuna kulola mamembala a udindo wa DBA kuwonjezera ma tebulo atsopano. Kuwonjezera apo, tikufuna kuti athe kupatsa ena ogwiritsira ntchito chilolezo kuti achite chimodzimodzi. Nayi ndemanga ya SQL:

KULENGA ZOKHALA
KU DBA
PAMENE MUNGACHITE

Zindikirani kuti taphatikizapo MITU YOPHUNZITSIRA kuti tiwonetsetse kuti DBA zathu zingapereke chilolezo kwa ogwiritsa ntchito ena.

Kuchotsa Zilolezo

Tikapatsidwa mavoti, nthawi zambiri zimakhala zofunikira kuti tibwezeretsenso tsiku lotsatira. Mwamwayi, SQL imatipatsa lamulo la REVOKE kuchotsa zilolezo zapatsidwa kale. Pano pali syntax:

BWERANI [ZOKHUDZA KWAMBIRI]
ON
FROM

Mudzazindikira kuti mawu ofanana ndi lamuloli ndi ofanana ndi lamulo la GRANT. Kusiyana kokha ndiko kuti PAMENE MUNGAGWIRITSIRITSO MWACHISANU NDI CHIWIRI mumayendedwe a REVOKE mmalo mwake pamapeto a lamulo. Mwachitsanzo, tiyeni tiyerekeze kuti tikufuna kubwezeretsa chilolezo chomwe Maria adapatsidwa kale kuti achotse zolemba kuchokera kwa adiresi. Titha kugwiritsa ntchito lamulo ili:

Bwerani
ON Otsatsa
Kuchokera kwa Mariya

Ndipo ndizo zonse zomwe ziripo kwa izo! Pali njira imodzi yothandizira ndi Microsoft SQL Server yomwe iyenera kutchulidwa-lamulo la DENY. Lamuloli lingagwiritsidwe ntchito kutsutsa mwatsatanetsatane chilolezo kwa wogwiritsa ntchito omwe angakhale nawo kudzera mu umembala wamakono kapena wamtsogolo. Pano pali syntax:

DENY
ON
KU

Zitsanzo

Kubwereranso ku chitsanzo chathu choyamba, tiyeni tiyerekeze kuti Mary nayenso anali membala wa gawo la oyang'anira omwe adalinso ndi mwayi wopeza tebulo. Lamulo la REVOKE lapitayi silikwanira kukana kufika kwake ku gome. Icho chichotsa chilolezo chomwe chinapatsidwa kwa iye kupyolera m'mawu a GRANT akukhudzana ndi akaunti yake yogwiritsa ntchito, koma sichidzakhudza zilolezo zomwe adapeza kudzera mwa abwenzi ake mu gawo la Otsogolera. Komabe, ngati tigwiritsa ntchito chiganizo cha DENY chidzatsekereza cholowa chake. Nazi lamulo:

DZIWANI
ON Otsatsa
KWA Mariya

Lamulo la DENY kwenikweni limapanga "chilolezo cholakwika" muzitsulo zowonjezera. Ngati kenako tikuganiza kuti tipatse Maria chilolezo chochotsera mizere kuchokera pa tebulo la Otsatsa, sitingagwiritse ntchito lamulo la GRANT. Lamulo limenelo likanangotengedwa nthawi yomweyo ndi DENY yomwe ilipo. M'malo mwake, titha kugwiritsa ntchito lamulo la REVOKE choyamba kuchotsa chilolezo cholakwika chotsatira motere:

Bwerani
ON Otsatsa
Kuchokera kwa Mariya

Mudzazindikira kuti lamulo ili ndilofanana ndi limene linachotsedwa chilolezo chovomerezeka. Kumbukirani kuti DENY ndi GRANT amalamulira onse amagwira ntchito mofananamo * mdash; onsewo amapanga zilolezo (zabwino kapena zoipa) mu njira yosungirako njira. Lamulo la REVOKE limachotsa zilolezo zonse zabwino ndi zoipa za wogwiritsa ntchito. Pomwe lamuloli laperekedwa, Maria athetsa mizere kuchokera pa tebulo ngati ali membala wa udindo womwe uli ndi chilolezocho. Kapena, lamulo la GRANT lingaperekedwe kuti lipereke chilolezo cha DELETE mwachindunji ku akaunti yake.

M'kati mwa nkhaniyi, mwaphunzira zambiri zokhudza njira zothandizira zogwiritsidwa ntchito ndi Standard Standard Query Language. Mawu oyambawa akuyenera kukupatsani mfundo zoyambira, koma ndikukulimbikitsani kuti muwerenge zolemba zanu za DBMS kuti muphunzire njira zowonjezera zotetezedwa ndi dongosolo lanu. Mudzapeza kuti mazenera ambiri akuthandizira njira zowonjezeramo zowonjezera, monga kupereka zilolezo pamakalata ena.