Smachd-inntrigidh do Luchd-cleachdaidh agus Roinnean ann an SQL

Tha tèarainteachd deatamach do luchd -rianachd stòr-dàta a tha ag iarraidh dìon a dhèanamh air na gigabytes aca de dh 'fhiosrachadh gnìomhachais deatamach bho shùilean brèagha luchd-taobh a-muigh neo-ùghdarraichte agus daoine a tha a' feuchainn ri dhol thairis air an ùghdarras. Tha na siostaman stiùiridh dàta co- cheangailte a ' toirt seachad seòrsa de shiostaman tèarainteachd bunaiteach a tha air an dealbhadh gus na cunnartan sin a lùghdachadh. Bidh iad a 'ruith bhon dìon fhacal-fhaire sìmplidh a tha Microsoft Access a' tairgsinn don structair iom-fhillte / neach-obrach a tha a 'faighinn taic bho stòr-dàta adhartach dàimh leithid Oracle agus Microsoft SQL . Tha an artaigil seo a 'sealltainn air na dòighean tèarainteachd a tha cumanta do stòran-dàta a tha a' cur an gnìomh Ceist Structured Language (no SQL ). Còmhla, bidh sinn a 'coiseachd tron ​​phròiseas airson neartachadh smachd ruigsinneachd dàta agus dèanamh cinnteach à sàbhailteachd an dàta agad.

Luchd-cleachdaidh

Tha stòran-dàta stèidhichte air an fhrithealaiche a 'toirt taic do bhun-bheachd neach-cleachdaidh coltach ris an fheadhainn a chleachdar ann an siostaman obrachaidh coimpiutaireachd Ma tha thu eòlach air an inbheachadh luchd-cleachdaidh / buidhne a lorgar ann am Microsoft Windows NT agus Windows 2000, lorgar gu bheil na buidhnean cleachdaidh / dreuchd a tha taic bho SQL Server agus Oracle glè choltach.

Tha e air a mholadh gu mòr gun cruthaich thu cunntasan neach-cleachdaidh stòr-dàta fa leth airson gach neach a bhios a 'faighinn cothrom air an stòr-dàta agad. Tha e comasach gu teicneòlas cunntasan a roinn eadar luchd-cleachdaidh no dìreach cleachd aon cunntas cleachdaiche airson gach seòrsa neach-cleachdaidh a dh'fheumas inntrigeadh dhan stòr-dàta agad, ach tha mi a 'cur bacadh làidir air a' chleachdadh seo air dà adhbhar. An toiseach, cuiridh e às do chunntachalachd fa leth-ma nì neach-cleachdaidh atharrachadh air an stòr-dàta agad (leig le bhith a 'togail àrdachadh $ 5,000 e fhèin), chan urrainn dhut a lorg air ais gu neach sònraichte tro bhith a' cleachdadh logaichean sgrùdaidh. A thuilleadh air an sin, ma tha neach-cleachdaidh sònraichte a 'fàgail do bhuidheann agus ma tha thu airson faighinn a-steach air an stòr-dàta, feumaidh tu am facal-faire atharrachadh gu bheil an luchd-cleachdaidh air fad an urra.

Bidh na modhan airson cunntasan luchd-cleachdaidh a 'dol eadar àrd-ùrlar agus àrd-ùrlar agus feumaidh tu co-chomhairleachadh a dhèanamh air na sgrìobhainnean sònraichte agad airson an dearbh mhodh-obrach. Bu chòir do luchd-cleachdaidh Microsoft SQL Server rannsachadh a dhèanamh air cleachdadh a 'ghnìomhachd sp_adduser a chaidh a stòradh. Gheibh luchd-rianachd stòr-dàta Oracle gu bheil an t-àithne USER CREATE feumail. Dh'fhaodadh tu cuideachd airson sgeamaichean dearbhaidh eile a rannsachadh. Mar eisimpleir, tha Microsoft SQL Server a 'toirt taic do chleachdadh Windows NT Integrated Security. Fon sgeama seo, tha luchd-cleachdaidh air an comharrachadh chun an stòr-dàta le na cunntasan cleachdaiche aig Windows NT agus chan fheum iad a-steach ID a bharrachd airson facal-faire agus facal-faire gus faighinn chun an stòr-dàta. Tha an dòigh-obrach seo air a mheas gu mòr am measg luchd-rianachd stòr-dàta a chionn 's gu bheil e a' gluasad eallach stiùireadh rianachd gu luchd-rianachd lìonra agus tha e a 'toirt seachad soidhnichean aon-shoilleir don neach-cleachdaidh deireannach.

Roles

Ma tha thu ann an àrainneachd le àireamh bheag de luchd-cleachdaidh, is dòcha gu bheil thu a 'lorg gu bheil sin a' cruthachadh cunntasan luchd-cleachdaidh agus a 'sònrachadh ceadan gu dìreach dhaibh. Ge-tà, ma tha àireamh mhòr de luchd-cleachdaidh agad, bidh e nas coltaiche gum bi an t-eallach a thaobh cumail suas chunntasan agus ceadan iomchaidh a dhìth ort. Gus an t-eallach seo a lùghdachadh, tha stòran-dàta co-cheangailte a 'toirt taic don bheachd air dreuchdan. Bidh dreuchdan stòr-dàta ag obair mar an ceudna ri buidhnean Windows NT. Thèid cunntasan cleachdaiche a shònrachadh airson dreuchd (ean) agus ceadan an uair sin a thoirt don dreuchd gu h-iomlan seach na cunntasan neach-cleachdaidh fa leth. Mar eisimpleir, b 'urrainn dhuinn dreuchd DBA a chruthachadh agus cuiridh sinn cunntasan luchd-cleachdaidh ar luchd-obrach rianachd ris an dreuchd seo. Aon uair 's gu bheil sinn air seo a dhèanamh, is urrainn dhuinn cead sònraichte a thoirt do gach neach-rianachd làithreach (agus san àm ri teachd) le bhith a' sònrachadh cead don dreuchd. A-rithist, tha na modhan airson cruthachadh dhleastanasan eadar-dhealaichte bho àrd-ùrlar gu àrd-ùrlar. Bu chòir do luchd-rianachd MS SQL an sgrùdadh a dhèanamh air a 'mhodh sp_addrole a tha air a stòradh fhad' s bu chòir dha DBAs Oracle a bhith a 'cleachdadh co-dhearbhadh ROING CREATE.

A 'toirt seachad ceadan

A-nis gu bheil sinn air luchd-cleachdaidh a chur ris an stòr-dàta againn, tha an t-àm ann tòiseachadh a 'neartachadh tèarainteachd le bhith a' cur cead. Is e ar ciad cheum ceadan stòr-dàta iomchaidh a thoirt don luchd-cleachdaidh againn. Nì sinn seo tro bhith a 'cleachdadh aithris SQL GRANT.

Seo co-thomhas an aithris:

GRANT
[ON

]
TO
[LE RIAGHLADH GRANT]

A-nis, thoir sùil air an aithris seo loidhne-air-loidhne. Tha a 'chiad loidhne, ceadan a' leigeil leinn na ceadan clàr sònraichte a tha sinn a 'toirt seachad a shònrachadh. Faodaidh iad seo a bhith an dàrna cuid ceadan ìre bùird (mar SELECT, INSERT, UPDATE and DELETE) no ceadan stòr-dàta (leithid CREATE TABLE, ALTER DATABASE and GRANT). Faodar barrachd air aon chead a thoirt seachad ann an aon aithris GRANT ach chan fhaod ceadan ìre clàr agus ceadan ìre stòr-dàta a bhith air an cur còmhla ann an aon aithris.

Tha an dàrna loidhne, ON

, air a chleachdadh gus an clàr a tha a 'toirt buaidh airson ceadan ìre bùird a shònrachadh. Thèid an loidhne seo fhàgail ma tha sinn a 'toirt seachad ceadan ìre-stòr-dàta. Tha an treas loidhne a 'sònrachadh an neach-cleachdaidh no an dreuchd a tha a' faighinn ceadan.

Mu dheireadh, tha an ceathramh loidhne, LE LEASADH GRANT, roghainneil. Ma tha an loidhne seo air a ghabhail a-steach san aithris, tha cead aig an neach-cleachdaidh a tha a 'toirt buaidh air na h-aon cheadan seo a thoirt do luchd-cleachdaidh eile. Thoir fa-near nach urrainn an GABHAIL TAGHAID a bhith air a shònrachadh nuair a thèid na ceadan a thoirt do dhreuchd.

Eisimpleirean

Feuch gun coimhead sinn air grunn eisimpleirean. Anns a 'chiad suidheachadh againn, tha sinn air o chionn ghoirid fhastadh air buidheann de 42 luchd-inntrigidh dàta a bhios a' cur agus a 'cumail chlàran luchd-cleachdaidh. Feumaidh iad a bhith comasach air fiosrachadh fhaighinn ann an clàr nan Custaiméirí, am fiosrachadh seo a mhion-atharrachadh agus clàran ùra a chur ris a 'chlàr. Cha bu chòir dhaibh a bhith comasach air clàr às an stòr-dàta a sguabadh às gu tur. An toiseach, bu chòir dhuinn cunntasan cleachdaiche a chruthachadh airson gach gnìomhaiche agus an uair sin cuir sinn iad uile gu dreuchd ùr, DataEntry. An ath rud, bu chòir dhuinn an aithris SQL a leanas a chleachdadh gus na ceadan iomchaidh a thoirt dhaibh:

GRANT SELECT, INSERT, UPDATE
Air luchd-cleachdaidh
Aotrom Trom Anabarrach

Agus tha sin uile ri fhaighinn! Nise, feuchamaid sgrùdadh air cùis far a bheil sinn a 'sònrachadh ceadan ìre-stòr-dàta. Tha sinn airson leigeil le buill de dhleastanas DBA bùird ùra a chur ris an stòr-dàta againn. A bharrachd air sin, tha sinn ag iarraidh gun urrainn dhaibh cead a thoirt do luchd-cleachdaidh eile an aon rud a dhèanamh. Seo an aithris SQL:

GRANT CREATE TABLE
A 'DBA
A 'GABHAIL RI TEACHD

Thoir fa-near gu bheil sinn air loidhne LEASACHAIDH GRANT a ghabhail a-steach gus dèanamh cinnteach gum faod an DBA againn an cead seo a thoirt do luchd-cleachdaidh eile.

A 'toirt cead air falbh

Aon uair 's gu bheil sinn air cead a thoirt seachad, bidh e a' dearbhadh gu bheil e riatanach gus an dùnadh aig ceann-là nas fhaide air adhart. Gu fortanach, tha SQL a 'toirt dhuinn an àithne REVOKE gus cead a thoirt seachad roimhe. Seo an co-chòrdadh:

REVOKE [RIAGHLADH GRANTA AIR]

ON
O

Nochdaidh tu gu bheil co-chòrdadh an ùghdarrais seo coltach ris an òrdugh GRANT. Is e an aon eadar-dhealachadh a th 'ann le LEASACHADH GRANTADH air loidhne-òrdugh REVOKE an àite aig deireadh an òrduigh. Mar eisimpleir, smaoinich sinn gu bheil sinn airson an cead a thug Màiri roimhe seo a thoirmeasg airson clàran a thoirt air falbh bho stòr-dàta luchd-cleachdaidh. Bhiodh sinn a 'cleachdadh an òrdugh a leanas:

Sgaoileadh
Air luchd-cleachdaidh
BHO Mhàiri

Agus tha sin uile ri fhaighinn! Tha aon inneal a bharrachd ann le taic bho Microsoft SQL Server a tha luachmhor a ràdh - an t-òrdugh DENY. Faodar an t-òrdugh seo a chleachdadh gus cead a thoirt do neach-cleachdaidh gu faiceallach a dh 'fhaodadh a bhith aca a-rithist tro ballrachd dreuchd làithreach no san àm ri teachd. Seo an co-chòrdadh:

DENY

ON
TO

Eisimpleirean

A 'tilleadh chun an eisimpleir mu dheireadh againn, smaoinich dhuinn gu robh Màiri cuideachd na bhall de dhreuchd nan Stiùirichean a bha cuideachd a' faighinn cothrom air clàr nan Custaiméirí. Cha bhiodh an aithris REVOKE a bh 'ann roimhe gu leòr gus a cothrom a dhiùltadh chun a' bhùird. Bheireadh e às an cead a thugadh i tro aithris GRANT a 'cuimseachadh air a' chunntas neach-cleachdaidh aice, ach cha toireadh e buaidh air na ceadan a fhuair iad tro a ballrachd ann an dreuchd nam Manaidsearan. Ach, ma chleachdas sinn aithris DENY, cuiridh e bacadh air oighreachd a 'chead. Seo an t-òrdugh:

DENY DELETE
Air luchd-cleachdaidh
DO Mhàiri

Tha an t-òrdugh DENY gu h-àraidh a 'cruthachadh "cead àicheil" anns na stuicichean stòr-dàta. Ma cho-dhùineas sinn nas fhaide air adhart cead a thoirt do Mhàiri sreathan a thoirt às a 'chlàr Luchd-cleachdaidh, chan urrainn dhuinn dìreach an comharra GRANT a chleachdadh. Bhiodh an stiùireadh sin air a chuir bacadh sa bhad leis an DENY a th 'ann mar-thà. An àite sin, chleachdadh sinn an òrdugh REVOKE an toiseach gus an inntrigeadh cead àicheil a thoirt air falbh mar a leanas:

Sgaoileadh
Air luchd-cleachdaidh
BHO Mhàiri

Nochdaidh tu gu bheil an t-òrdugh seo dìreach mar a chleachdas tu airson cead adhartach a thoirt air falbh. Cuimhnich gu bheil an DENY agus GRANT ag òrdachadh an dà chuid ag obair ann an dòigh coltach ris a 'mhodh; tha an dà chuid a' cruthachadh ceadan (dearbhach no àicheil) ann an inneal smachd ruigsinneachd an stòr-dàta. Tha an t-òrdugh REVOKE a 'toirt a h-uile cead adhartach agus àicheil don neach-cleachdaidh ainmichte. Aon uair 's gu bheil an stiùireadh seo air a thoirt a-mach, bidh e comasach do Mhàiri sreathan a sguabadh às a' bhòrd ma tha i na bhall de dhreuchd aig a bheil an cead sin. Air an làimh eile, dh'fhaodadh ceannard GRANT a bhith air a thoirt seachad gus cead DELETE a thoirt dìreach chun a h-cunntais aice.

Tron chùrsa an artaigil seo, tha thu air deagh dheagh ionnsachadh mu na modhan smachd inntrigidh a fhuair taic bho Cànan Ceistean Coitcheann. Bu chòir don ro-ràdh seo deagh thoiseach tòiseachaidh a thoirt dhut, ach tha mi a 'toirt brosnachadh dhut a bhith a' toirt iomradh air do dhuilleag DBMS airson na ceumannan tèarainteachd leasaichte a tha a 'faighinn taic bhon t-siostam agad ionnsachadh. Gheibh thu gu bheil mòran stòran-dàta a ' toirt taic do dhòighean smachd ruigsinneachd nas adhartaiche, mar a bhith a' toirt ceadan air colbhan sònraichte.