Fungua, REVOKE na DENY Database Ruhusa
Lugha ya Udhibiti wa Takwimu (DCL) ni somo la lugha ya Swala la Swala (SQL) na inaruhusu watendaji wa database kufanikisha ufikiaji wa usalama kwenye databana za uhusiano. Inakamilisha Lugha ya Definition Data (DDL), ambayo hutumiwa kuongeza na kufuta vitu vya database, na Lugha ya Kudhibiti Data (DML) inayotumiwa kurejesha, kuingiza, na kurekebisha yaliyomo ya database.
DCL ni rahisi zaidi ya subsets za SQL , ikiwa ni pamoja na amri tatu pekee: GRANT, REVOKE, na DENY. Pamoja, amri hizi tatu huwapa wasimamizi wenye kubadilika kuweka na kuondoa ruhusa ya database kwa mtindo wa punjepunje.
Inaongeza Ruhusa na Amri ya KATIKA
Amri ya GRANT hutumiwa na watendaji ili kuongeza ruhusa mpya kwa mtumiaji wa database . Ina syntax rahisi sana, inayoelezwa kama ifuatavyo:
Pata [fursa] ILIYO [kitu] KWA [mtumiaji]Hapa ni panda juu ya kila vigezo ambavyo unaweza kutoa na amri hii:
- Uwezo unaweza kuwa ama neno muhimu ALL (kutoa ruhusa mbalimbali) au idhini maalum ya database au kuweka ruhusa. Mifano ni pamoja na CREATE DATABASE, SELECT, INSERT, UPDATE, DELETE, EXECUTE na CREATE VIEW.
- Kitu kinaweza kuwa kitu chochote cha database. Chaguo halali cha chaguo hutofautiana kulingana na aina ya kitu cha dhamana unayojumuisha katika kifungu hiki. Kwa kawaida, kitu hicho kitakuwa database, kazi, utaratibu uliohifadhiwa , meza au mtazamo.
- Mtumiaji anaweza kuwa mtumiaji yeyote wa database. Unaweza pia kuchukua nafasi ya mtumiaji katika kifungu hiki ikiwa unataka kutumia matumizi ya usalama wa database.
- Ikiwa unajumuisha hiari na kifungu cha OPTION mwishoni mwa amri ya GRANT, hukupa tu mtumiaji maalum ruhusa zilizofafanuliwa katika taarifa ya SQL lakini pia kumpa mtumiaji uwezo wa kutoa ruhusa hizo sawa kwa watumiaji wengine wa database. Kwa sababu hii, tumia kifungu hiki kwa uangalifu.
Kwa mfano, fikiria unataka kumpa mtumiaji Joe uwezo wa kupata habari kutoka kwa meza ya wafanyakazi katika database inayoitwa HR. Unaweza kutumia amri ya SQL ifuatayo:
KUTUA KUTUMA KATIKA HABARIJoe sasa atakuwa na uwezo wa kupata habari kutoka kwa meza ya wafanyakazi. Hata hivyo, hawezi kuwapa watumiaji wengine ruhusa ya kupata taarifa kutoka kwa meza hiyo kwa sababu haukujumuisha kifungu cha OPTION cha KATIKA katika taarifa ya GRANT.
Kufuatilia Upatikanaji wa Database
Amri ya REVOKE inatumiwa kuondoa ufikiaji wa database kutoka kwa mtumiaji aliyepewa nafasi hiyo hapo awali. Kipindi cha amri hii kinafafanuliwa kama ifuatavyo:
REVOKE [MAFUNZO YA KATIKA] [ruhusa] ON [kitu] FROM [mtumiaji] [CASCADE]Hapa ni panda juu ya vigezo vya amri ya REVOKE:
- Ruhusa inataja ruhusa ya database ya kuondoa kutoka kwa mtumiaji aliyejulikana. Amri hiyo inaruhusu maagizo yote ya GRANT na DENY yaliyotengenezwa awali kwa ruhusa iliyojulikana.
- Kitu kinaweza kuwa kitu chochote cha database. Chaguo halali cha chaguo hutofautiana kulingana na aina ya kitu cha dhamana unayojumuisha katika kifungu hiki. Kwa kawaida, kitu hicho kitakuwa database, kazi, utaratibu uliohifadhiwa, meza au mtazamo.
- Mtumiaji anaweza kuwa mtumiaji yeyote wa database. Unaweza pia kuchukua nafasi ya mtumiaji katika kifungu hiki ikiwa unataka kutumia matumizi ya usalama wa database.
- UFUNZO WA KATIKA KWA kifungu cha sheria huondoa uwezo wa mtumiaji maalum kutoa ruhusa maalum kwa watumiaji wengine. Kumbuka : Ikiwa unajumuisha MAFUNZO YA MFANO kwa kifungu cha REVOKE, ruhusa ya msingi haijaondolewa. Kifungu hiki kinapunguza tu uwezo wa kutoa.
- Chaguo la CASCADE pia linaruhusu ruhusa maalum kutoka kwa watumiaji wowote kwamba mtumiaji maalum amepewa ruhusa.
Kwa mfano, amri ifuatayo inaruhusu idhini iliyotolewa kwa Joe katika mfano uliopita:
REVOKE Chagua juu ya HR.employees kutoka kwa JoeFuta kwa urahisi Upatikanaji wa Database
Amri ya DENY inatumiwa kuzuia wazi mtumiaji kupata kibali maalum. Hii inasaidia wakati mtumiaji ni mwanachama wa jukumu au kikundi kilichopewa ruhusa, na unataka kuzuia mtumiaji huyo yeyote kurithi ruhusa kwa kuunda ubaguzi. Syntax ya amri hii ni kama ifuatavyo:
DENY [idhini] ON [kitu] KWA [mtumiaji] Vigezo vya amri ya DENY ni sawa na wale kutumika kwa amri ya GRANT.
Kwa mfano, ikiwa unataka kuthibitisha kwamba Mathayo haitapata kamwe uwezo wa kufuta habari kutoka kwa meza ya wafanyakazi, toa amri ifuatayo: