Mana Mana Uru mo nga Kaiwhakamahi me nga Rohe kei SQL

He tino nui te haumaru ki nga kaiwhakahaere o te raraunga e whai ana ki te tiaki i o ratou kaitautoko o nga raraunga pakihi tino nui mai i nga kanohi prying o nga kaitautoko kaore e whakaaetia ana me nga kaitautoko e ngana ana kia nui atu to ratou mana. E whakarato ana nga pünaha whakahaere pätengi raraunga hononga katoa i etahi ahuatanga haumarutanga urutomo i hangaia hei whakaiti i enei riri. Ka puta mai ratou i te whakamarumaru kupuhipa e whakaratohia ana e Microsoft Access ki te mahinga kaiwhakamahi matatini / hanganga e tautokona ana e nga papanga whakapapa matatau rite Oracle me te Microsoft SQL Server. Ko tenei tuhinga e arotahi ana ki nga hanganga haumaru e pa ana ki nga paepae raraunga katoa e whakatinana ana i te Reo Uiui (ranei SQL ). Ka tahi, ka haere tatou i roto i te tukanga o te whakapakari i nga mana whakauru raraunga me te whakarite i te haumaru o to raraunga.

Kaiwhakamahi

Kei te tautoko katoa nga paepae raraunga a te Tūmau i te ariā kaiwhakamahi rite ki te whakamahi i nga pūnaha whakahaere rorohiko. Mena kua mohio koe ki te hiranga kaiwhakamahi / rōpū i kitea i roto i te Microsoft Windows NT me te Windows 2000, ka kitea e koe nga raupapa kaiwhakamahi / mahi e tautokohia ana e SQL Server me Oracle.

He tino taunakitanga kia hangaia e koe nga kaute kaiwhakamahi raraunga takitahi mo ia tangata e uru mai ana ki to papamahi. Ka taea te whakapuaki i nga kaute i waenga i nga kaiwhakamahi me te whakamahi noa i tetahi kaute kaiwhakamahi mo ia momo kaiwhakamahi e hiahia ana ki te uru atu ki to papamahi, engari ka tino akiakihia tenei mahi mo nga take e rua. Tuatahi, ka whakakorea e ia te kawenga takohanga takitahi-mehemea ka whakarereketia e te kaiwhakamahi to paatai ​​raraunga (me korero ma te tuku ia ia he $ 5,000), kaore e taea e koe te whakaatu mai ki tetahi tangata motuhake ma te whakamahi i nga waitohu kaute. I tua atu, mehemea ka waiho e tetahi kaiwhakamahi motuhake to whakahaere, ka hiahia koe ki te tango i tana huarahi mai i te paataka, ka kaha koe ki te huri i te kupuhipa e whakawhirinaki ana nga kaiwhakamahi katoa.

Ko nga huarahi mo te waihanga i nga kaute kaiwhakamahi ka rereke mai i te turanga ki te turanga, ka whai korero koe ki nga tuhinga DBMS-motuhake mo te tukanga tika. Ko nga kaiwhakamahi Tūmau Microsoft SQL me tirotiro i te whakamahi o te tukanga rongoa sp_adduser. Ka kitea e nga kaiwhakarato raraunga Oracle te whai hua o te tono CREATE USER. Ka hiahia pea koe ki te tirotiro i nga kaupapa motuhake motuhake. Hei tauira, ka tautoko a Microsoft SQL Server i te whakamahinga o te Haumaru Katoa o te NT. I raro i tenei kaupapa, ka tautuhia nga kaiwhakamahi ki te paataka e o ratou kaute kaiwhakamahi Windows NT, kaore hoki e hiahiatia ki te whakauru i tetahi atu kaiwhakamahi ID me te kupuhipa kia uru atu ai ki te paataka. Koinei te huarahi tino rongonui i nga kaiwhakarato raraunga na te mea ka hurihia te kawenga o te whakahaere kaute ki nga kaimahi whakahaere whatunga, ka whakarato i te maatau o tetahi tohu tohu ki te kaiwhakamahi mutunga.

Ngā Rohe

Mena kei roto koe i te taiao me te iti o nga kaiwhakamahi, ka kitea pea e koe te hanga i nga kaute kaiwhakamahi, me te tuku tika i nga whakaaetanga ki a ratau, e ranea ana mo o hiahia. Heoi, ki te mea he maha o nga kaiwhakamahi, ka tino raruraru koe i te pikaunga o te pupuri i nga korero me nga whakaaetanga tika. Hei whakakotahi i tenei pikaunga, ka tautokohia e nga hononga whakawhitiwhiti whakaaro te whakaaro o nga mahi. Ko nga mahi o te Raraunga e rite ana ki nga roopu Windows NT. Ka tohatohahia nga kaute kaiwhakamahi ki nga waahanga, ka tukuna atu nga whakaaetanga ki te mahi hei katoa, kaua ki nga kaute kaiwhakamahi takitahi. Hei tauira, ka taea e tatou te waihanga i te mahi DBA, ka whakauru i nga kaute kaiwhakamahi o o tatou kaimahi whakahaere ki tenei mahi. Ina oti tenei, ka taea e matou te tuku he whakaaetanga motuhake ki nga kaiwhakahaere katoa (me nga kaiwhakahaere) kei te tuku noa i te whakaaetanga ki te mahi. Ano, ko nga tukanga mo te hanga i nga waahi rereke rereke mai i te turanga ki te turanga. Me torotoro nga kaiwhakahaere Tūmau SQL MS ki te tukanga rongoa sp_addrole i te wa e whakamahi ana a Oracle DBA i te syntax CREATE ROLE.

Whakaaetanga Tukunga

Na inaianei kua tapiritia e matou nga kaiwhakamahi ki ta maatau paparangi, ko te wa tenei ki te timata i te haumaru ki te whakauru i nga whakaaetanga. Ko ta tatou taahiraa tuatahi ko te tuku i nga whakaaetanga raraunga tika ki o tatou kaiwhakamahi. Ka whakatutukihia e mätou mä te whakamahi i te tauäkï SQL GRANT.

Anei te raupapa o te korero:

KAUPAPA
[ON ]
Ki
[I TE WHAKARANGA KAUPAPA]

Na, kia ata tirohia tenei rarangi kupu-raina. Ko te raina tuatahi, ko te GRANT , ka taea te tautuhi i nga whakaaetanga ripanga motuhake e tukuna ana e matou. Ka taea e enei nga whakaaetanga taumata-ripanga (pēnei i te WHAKARANGA, TE WHAKAMAHI, te UPDATE me te DELETE), whakaaetanga pātengi raraunga (pēnei i CREATE TABLE, ALTER DATABASE, GRANT). Maha atu i te kotahi whakaaetanga ka taea te tuku i roto i tetahi korero GRANT kotahi, engari kaore pea i whakaaetia nga whakaaetanga taumata-ripanga me nga whakaaetanga taumata-raraunga ki tetahi taurangi kotahi.

Ko te raina tuarua, ON

, ka tautuhi i te ripanga e pa ana mo nga whakaaetanga taumata-ripanga. Ka whakakorea tenei rarangi ki te tukuna e matou nga whakaaetanga taumata-raraunga. Ko te rarangi tuatoru e tohu ana i te kaiwhakamahi me te mahi e whakaaetia ana.

Hei whakamutunga, ko te rarangi tuawha, me te WHAKARANGA KAI, he kōwhiringa. Mena kei te whakauruhia tenei raupapa i roto i te tauākī, ka whakaaetia kia whakaaetia enei whakaaetanga ano ki era atu kaiwhakamahi. Kia mahara kaore e taea te tautuhi i te WHAKAHI WHAKAIRANGI i te wa e tohaina ai nga whakaaetanga ki tetahi mahi.

He tauira

Tirohia etahi tauira. I to tatou waahi tuatahi, kua utua e matou he roopu o te hunga kaiwhakahaere raraunga raraunga e 42 ka whakauru me te pupuri i nga reta a te kiritaki. Me kaha ki te uru atu ki nga korero i roto i te ripanga Kaihoko, whakarerekē i enei korero me te whakapiri i nga rekoata hou ki te ripanga. Kaore e taea e ratou te whakakore i tetahi rekoata mai i te papanga. Tuatahi, me tautuhi tatou i nga kaute kaiwhakamahi mo ia kaiwhakahaere, ka whakauru katoa ki te mahi hou, DataEntry. Hei muri, me whakamahi i te korero korero SQL e whai ake nei kia hoatu ki a ratou nga whakaaetanga tika:

WHAKAMAHI KAUPAPA, WHAKAMAHI, UPANGA
ON KATOA
Ki te Raraunga

Na ko te mea katoa kei reira! Na, kia ata tirotirohia he keehi kei te tohua e matou nga whakaaetanga taumata-raraunga. E hiahia ana matou ki te tuku i nga mema o te mahi DBA ki te whakauru i nga ripanga hou ki ta maatau paparangi. I tua atu, e hiahia ana matou ki a raatau ki te tuku i etahi whakaaetanga kaiwhakamahi kia mahi ano. Tenei ko te tauākī SQL:

WHAKAMAHI KAUPAPA TUA
Ki te DBA
ME TE WHAKANUI KAUPAPA

Kia mahara kua whakauruhia e matou te RANGA WHAKARANGA WHAKARANGA hei whakarite kia tohaina e to tatou DBA tenei whakaaetanga ki etahi atu kaiwhakamahi.

Tango i nga Whakaaetanga

I te wa kua whakaaetia e matou nga whakaaetanga, ka whakaaturia e ia he mea tika hei whakakore i a ratau i muri iho. Kia hari, ka tuku mai a SQL ki a matou i te whakahau REVOKE ki te tango i nga whakaaetanga o mua. Tenei ko te whakahuahua:

WHAKATAHI [WHAKANUI WHAKANUI MO]
ON
FROM

Ka kite koe he rite te hanganga o tenei whakahau ki te ahua o te whakahau GRANT. Ko te rerekëtanga anake ko te WHAKAHI WHAKARANGA kua tohua ki te raina whakahau REVOKE kaore i te mutunga o te whakahau. Hei tauira, kia whakaarohia e hiahia ana matou ki te whakakore i te whakaaetanga o Meri i mua i te tango i nga tuhinga mai i te paatatapu Kaihokohoko. Ka whakamahi matou i te whakahau e whai ake nei:

Tuhinga o mua
ON KATOA
FROM Mary

Na ko te mea katoa kei reira! He tetahi atu kaupapa e tautokona ana e te Microsoft SQL Server e whai hua ana te whakahua-ko te whakahau DENY. Ka taea te whakamahi i tenei tono ki te whakakore i te whakaaetanga ki tetahi kaiwhakamahi kia penei pea i roto i te mahi mema o te mema mo te wa kei te heke mai ranei. Tenei ko te whakahuahua:

KAUPAPA
ON
Ki

He tauira

Hoki ake ki to maatau tauira o mua, whakaarohia ko Meri ano hoki tetahi mema o nga Kaiwhakahaere Mana i uru atu ki te ripanga Kaihoko. Kaore te korero a te REVOKE o mua e ranea ki te whakakore i tana uru atu ki te tepu. Ka whakakorehia te whakaaetanga i whakawhiwhia ki a ia i roto i te taurangi GRANT e aro ana ki tana kaute kaiwhakamahi, engari kaore e whakaaetia nga whakaaetanga i riro mai i tona mema i roto i te Managers. Engari, ki te whakamahi maatau i te korero DENY ka pakaruhia tona kainga o te whakaaetanga. Tenei te whakahau:

Tuhinga o mua
ON KATOA
Ki a Mary

Ko te whakahau DENY ka waihanga i te "whakaaetanga kino" i roto i nga whakahaere whakauru raraunga. Mena ka whakatauhia e matou kia whakaae Maria ki te tango i nga rarangi mai i te ripanga Kaihoko, kaore e taea e matou te whakamahi i te whakahau GRANT. Ko taua whakahau ka hurihia tonu e te DENY. Engari, ka whakamahi tuatahi matou i te whakahau REVOKE ki te tango i te urunga whakaaetanga kino e whai ake nei:

Tuhinga o mua
ON KATOA
FROM Mary

Ka kite koe he rite tonu tenei whakahau ki te tango i tetahi whakaaetanga pai. Kia mahara ki nga whakahau a DENY me GRANT e mahi ana i roto i te ahua o te ahua * o te mahi; kei te hanga e raua nga whakaaetanga (pai ranei kino) i roto i te hanganga mana uru uru. Ko te whakahau REVOKE ka whakakore i nga whakaaetanga pai me te kino mo te kaiwhakamahi kua tohua. I te wa i tukuna tenei whakahau, ka taea e Mary te whakakore i nga rarangi i te rihi ki te mea he mema ia mo tetahi mahi e whiwhi ana i taua whakaaetanga. I tua atu, ka taea te tuku i tetahi whakahau GRANT ki te whakarato i te whakaaetanga DELETE ki tana kaute.

I te wa katoa o tenei tuhinga, kua ako koe i te pai mo nga huarahi whakahaere e tautokohia ana e te Paerewa Paerewa Paerewa. Me whakarato koe i tenei whakatairanga i te timatanga pai, engari ka akiaki koe ki a koe ki te tuhi i nga tuhinga DBMS ki te ako i nga waahanga haumaru kua whakatairangatia e to rorohiko. Ka kitea e koe he maha o nga papapae raraunga e tautoko ana i nga kaupapa mana whakahaere angitu atu, penei i te tuku whakaaetanga i runga i nga pou motuhake.