GANTI, REVOKE ug DENY nga Pahintulot sa Database
Ang Data Control Language (DCL) usa ka subset sa Structured Query Language (SQL) ug nagtugot sa mga administrator sa database aron ma-configure ang access sa seguridad sa mga relational databases. Gisundan kini sa Data Definition Language (DDL), nga gigamit aron sa pagdugang ug pag-delete sa database nga mga butang, ug ang Data Manipulation Language (DML) nga gigamit sa pagkuha, pagsulod, ug pag-usab sa sulod sa database.
Ang DCL mao ang pinakasayon sa mga subset nga SQL , kay kini naglangkob lamang sa tulo ka mga sugo: GRANT, REVOKE, ug DENY. Gikombinar, kining tulo ka mga sugo naghatag sa mga tigdumala nga adunay kalabutan sa pag-set ug pagtangtang sa mga permiso sa database sa usa ka grabe nga paagi.
Pagdugang sa mga permiso sa GRANT Command
Ang sugo sa GRANT gigamit sa mga tigdumala aron makadugang sa mga bag-ong permiso sa usa ka gumagamit sa database . Kini adunay yano nga syntax, nga gihubit ingon sa mosunod:
GRANT [pribilehiyo] SA [object] SA [tagagamit] [UBAN SA GANTI SA OPISYAL]Ania ang hugpong sa matag usa sa mga gitas-on nga imong ikahatag niini nga sugo:
- Ang pribilehiyo mahimong mahimong ang keyword ALL (paghatag sa nagkalainlain nga mga permiso) o usa ka piho nga pagtugot sa database o set of permissions. Ang mga pananglitan naglakip sa paghimo og DATABASE, pagpili, pagsulod, pag-uswag, paglaglag, paghimo ug paghimo sa VIEW.
- Ang butang mahimong bisan unsang database nga butang. Ang balido nga mga kapilian sa pribilihiyo nagkalainlain base sa matang sa database object nga imong gilakip niini nga clause. Kasagaran, ang butang mahimong usa ka database, function, gitipigan nga pamaagi , lamesa o panglantaw.
- Ang tiggamit mahimong bisan unsang database user. Mahimo usab nimo nga ilisan ang usa ka papel alang sa tiggamit niini nga clause kung buot nimo nga gamiton ang papel nga gibase sa database security.
- Kon imong i-apil ang opsyon sa GRANT OPTION clause sa katapusan sa GRANT nga sugo, dili lamang ikaw mohatag sa gitakda nga tiggamit sa mga permiso nga gipasabut sa pahayag sa SQL apan naghatag usab sa user sa katakos sa paghatag sa sama nga mga permiso sa ubang mga gumagamit sa database. Tungod niini nga hinungdan, gamita kini nga hugpong sa pag-amping.
Pananglitan, hunahunaa nga gusto nimo nga hatagan ang user Joe og katakos sa pagkuha sa impormasyon gikan sa mga talahanayan sa empleyado sa usa ka database nga gitawag ug HR. Mahimo nimo gamiton ang mosunod nga SQL command:
PAGPILI SA GRANT SA HR.employees SA JoeSi Joe karon makabaton sa abilidad sa pagkuha sa impormasyon gikan sa talad sa empleyado. Dili siya, hinoon, makahatag sa pagtugot sa ubang mga tiggamit sa pagkuha sa kasayuran gikan sa maong lamesa tungod kay wala nimo gilakip ang KALUWASAN SA GRANT OPTION sa pahayag sa GRANT.
Pagpugong sa Access sa Database
Ang sugo sa REVOKE gigamit sa pagkuha sa database access gikan sa usa ka user nga kaniadto gihatagan sa maong access. Ang syntax alang niini nga sugo gihubit sama sa mosunod:
REVOKE [OPISYAL NGA GUGMA] [pagtugot] ON [object] GIKAN [user] [CASCADE]Ania ang hugpong sa mga lagda alang sa REVOKE nga sugo:
- Ang pagtugot nagtino sa mga permiso sa database nga kuhaon gikan sa nailhan nga user. Gipanghimaraot sa sugo ang GRANT ug DENY assertion nga gihimo kaniadto alang sa gitudlo nga pagtugot.
- Ang butang mahimong bisan unsang database nga butang. Ang balido nga mga kapilian sa pribilihiyo nagkalainlain base sa matang sa database object nga imong gilakip niini nga clause. Kasagaran, ang butang mahimong usa ka database, function, gitipigan nga pamaagi, lamesa o panglantaw.
- Ang tiggamit mahimong bisan unsang database user. Mahimo usab nimo nga ilisan ang usa ka papel alang sa tiggamit niini nga clause kung buot nimo nga gamiton ang papel nga gibase sa database security.
- Ang GRANT OPTION FOR clause nagwagtang sa katakus nga gihatag sa gumagamit aron paghatag sa gitakda nga pagtugot sa ubang mga tiggamit. Mubo nga sulat : Kon imong ilakip ang OPTION SA GRANT FOR clause sa usa ka pahayag sa REVOKE, ang pangunang pagtugot wala gibawi. Kini nga clause lamang ang pagbuot sa abilidad sa paghatag.
- Ang opsyon sa CASCADE usab mobakwi sa gitakda nga pagtugot gikan sa bisan kinsa nga tiggamit nga gihatag sa gitakda nga tiggamit sa pagtugot.
Pananglitan, ang mosunod nga sugo nagsalikway sa pagtugot nga gihatag kang Joe sa miaging pananglitan:
I-REVOKE PAPILI SA HR.employees gikan sa JoeTin-aw nga Pagdumili sa Access sa Database
Ang DENY nga sugo gigamit sa pagpugong sa usa ka tiggamit sa pagdawat sa usa ka partikular nga pagtugot. Makatabang kini kon ang usa ka user usa ka sakop sa usa ka papel o grupo nga gihatagan og usa ka pagtugot, ug gusto nimo nga mapugngan ang indibidwal nga tiggamit nga makapanunod sa pagtugot pinaagi sa paghimo sa usa ka eksepsyon. Ang syntax alang niini nga sugo mao ang mosunod:
DENY [pagtugot] ON [object] TO [user] Ang mga kalagmitan alang sa sugo sa DENY susama sa mga gigamit alang sa GRANT nga sugo.
Pananglitan, kung buot nimong maseguro nga si Mateo dili makadawat sa katakus sa pagwagtang sa kasayuran gikan sa talad sa empleyado, ipagawas ang mosunod nga sugo: