„Oracle 12c“ naudotojų ir schemų pagrindai

Autorius Chrisas Ruelis, Michaelas Wessleris

Vartotojai ne tik prieina prie „Oracle 12c“ duomenų bazių duomenų, bet ir turi objektus, kuriuose yra duomenys. Vartotojui priklausančių objektų rinkinys yra jo schema . Ne visi vartotojai turi objektų, todėl schemos gali būti tuščios.



aleve ir ibuprofenas kartu

Kiti vartotojai gali pasiekti ar vykdyti objektus pagal vartotojo schemą, kai schemos savininkas suteikia privilegijas. Įprasta, kad vienas vartotojas turi visus programos objektus (lenteles, indeksus, rodinius ir pan.), O tada visiems duomenų bazės vartotojams suteikia prieigą prie tų objektų. Tai daroma naudojant duomenų bazės dotacijas, vaidmenis ir sinonimus.



Pvz., Tarkime, kad turite ACME programą. Turėtumėte sukurti vartotoją, vadinamą ACME_OWN, ir visus objektus sukurti kaip ACME_OWN. Tada sukūrėte duomenų bazės vaidmenį pavadinimu ACME_USER ir šiam vaidmeniui suteikėte objektų, esančių ACME_OWN schemoje, SELECT, UPDATE, EXECUTE.

Programos vartotojams būtų suteiktas vaidmuo ACME_USER, kad jie galėtų pasiekti ACME_OWN objektus. Tokiu būdu objektai priklauso vienam vartotojui, tačiau faktiniai duomenų bazės ar programos vartotojai pasiekia duomenis. Šis atskyrimas pagerina saugumą ir valdomumą.



Vartotojai skirstomi į dvi kategorijas:

  • Programų savininkai, kurių schemose yra keli objektai

  • Programos vartotojai, turintys nedaug objektų arba be jų



Kiekvieno vartotojo kūrinio sintaksė yra ta pati, tačiau kiekvieno kategorija skiria stipendijas ir privilegijas.

Štai vartotojo sintaksė:

CREATE USER IDENTIFIED BY TEMPORARY TABLESPACE DEFAULT TABLESPACE ;

Vartotojo vardui naudokite ką nors apibūdinančio (pvz., DUOMENŲ BAZĖS PAVADINIMAS _OWN) programos objektų savininkui. Jei sujungtas žiniatinklio vartotojas ketina pasiekti programą, tinka vardas, pridėtas prie _WEB. Įprasti programos vartotojai turėtų būti aprašomieji, pvz., Vardas, pavardės inicialas; pavyzdys yra VICKYB.

Vartotojo slaptažodis turėtų turėti šias charakteristikas:

  • Būkite daugiau nei aštuoni simboliai

  • Įtraukite skaičius ir specialiuosius simbolius

  • Negalima remtis žodyno žodžiais

  • Naudokite didžiąsias ir mažąsias raides

Įdėjus slaptažodį dvigubose kabutėse (), galima naudoti specialiuosius simbolius, nenutraukiant struktūrinės užklausos kalbos (SQL) sintaksės.

Kuriant vartotoją reikia nustatyti dvi lentelių sritis: laikiną ir numatytąją:

  • Laikina lentelių erdvė yra kuriant laikinus segmentus. TEMP yra standartas.

  • DEFAULT lentelių erdvė yra vieta, kur sukuriami lentos srities objektai (pvz., Lentelės ar indeksai), jei objekto kūrimo sakinyje praleidžiate „TABLESPACE“ saugojimo sąlygą. Geriausia, jei kiekvienoje lentelėje ar indekso kūrimo sakinyje yra lentelių sritis. Jei trūksta lentų srities, šie objektai eina į lentelių sritį, apibrėžtą kaip Numatyta. Paprastai „USERS“ lentelių sritis apibrėžiama kaip Numatyta.

Vartotojui reikia sistemos privilegijų, kad jis galėtų prisijungti prie duomenų bazės ir kurti objektus. Suteikdami privilegiją KURTI SESIJĄ arba JUNGTI, vartotojas gali prisijungti prie duomenų bazės. Suteikdamas vartotojui vaidmenį IŠTEKLIS, vartotojas gali sukurti duomenų bazės objektus.

Atlikdami šiuos veiksmus sukursite vartotoją naudodami „SQL * Plus“ ir suteiksite reikiamus vaidmenis ir teises prisijungti prie duomenų bazės:

  1. Jei norite sukurti vartotoją, sistemoje „SQL * Plus“ įveskite:

    SYS@dev12c> create user acme_own 2 identified by 'acme_own2013!' 3 temporary tablespace temp 4 default tablespace users; User created.

    Šiame pavyzdyje vartotojas yra schemos savininkas ACME_OWN. Numatytoji lentelių sritis apibrėžiama kaip VARTOTOJAI, nors tikimasi, kad saugyklos sąlygoje „TABLESPACE“ kuriant objektus bus nurodyta ACME_DATA.

  2. Suteikite vartotojui CONNECT ir RESOURCE vaidmenis, kad vartotojas galėtų prisijungti prie duomenų bazės ir kurti objektus:

    SYS@dev12c> grant connect to acme_own; Grant succeeded. SYS@dev12c> grant resource to acme_own; Grant succeeded.
  3. Sukurkite naują vaidmenį:

    SYS@dev12c> create role acme_user; Role created. SYS@dev12c> grant create session to acme_user; Grant succeeded.

    Šiame pavyzdyje sukurtas ACME_USER. Tas vartotojas gaus objektų dotacijas iš ACME_OWN paskyros, kai bus sukurti objektai.

  4. Suteikite atitinkamas privilegijas INSERT, UPDATE, DELETE and EXECUTE kiekvienam objektui antram vaidmeniui.

    Tai leidžia jums suteikti vaidmenį, kuriam suteikiamos dotacijos, kiekvienam programos vartotojui. Tada kiekvienas programos vartotojas turi prieigą prie objektų ACME_OWN. Tai taupo nuo to, kad kiekvienam vartotojui reikia atskirai suteikti prieigą prie kiekvieno objekto.

  5. Pirmam vaidmeniui suteikite KURTI SESIJĄ.

    Kai vartotojai gauna vaidmenį, jie gali prisijungti prie duomenų bazės.

Individualius programos vartotojus galite sukurti naudodami „SQL * Plus“. Norėdami sukurti vartotojus, naudokite „Enterprise Manager Database Express“:

  1. Pasirinkite Sauga → Vartotojai, kad patektumėte į ekraną Kurti vartotoją.

    image0.jpg

    maža žalia tabletė k8
  2. Įveskite vartotojo vardą, profilį ir slaptažodį.

    „VICKYB“ turi numatytąjį profilio ir slaptažodžio autentifikavimą. Įvestas slaptažodis rodomas kaip žvaigždutės; turite įvesti du kartus, kad įsitikintumėte, jog neteisingai įvedėte tekstą.

  3. Spustelėkite rodyklę dešinėn, kad pereitumėte į „Stablespaces“ ekraną.

    Pasirinkite naują MY_DATA lentelių sritį kaip numatytąją VICKYB lentelių vietą.

    Sutikite su laikinaja lentelių erdve - numatytoji TEMP lentelė.

    image1.jpg

  4. Spustelėkite rodyklę dešinėn, kad pereitumėte į kitą ekraną.

    Parodomas ekranas „Privilege“. Kairėje yra sistemos privilegijos arba vaidmenys. Vaidmenys žymimi varnele. Taip pat galite pamatyti naują vartotoją su vaidmeniu CONNECT.

    image2.jpg

  5. Baigę pasirinkti vaidmenis ir privilegijas, spustelėkite Gerai.

    Vartotojas sukurtas.

Jei jums reikia daugiau programos vartotojų, atlikite šiuos veiksmus:

  1. Pagrindiniame saugos ekrane pasirinkite vartotoją, kurį norite naudoti kaip šabloną.

  2. Spustelėkite mygtuką Sukurti panašų.

    Tai grįš į vedlio kūrimo vedlį su jau pasirinktomis parinktimis, kad atspindėtų jūsų kopijuojamą vartotoją.

  3. Sukurkite naują vartotoją su tais pačiais vaidmenimis ir privilegijomis, bet su kitu vartotojo vardu ir slaptažodžiu.

    Šiuo metu turite programos schemos savininko abonementą ir duomenų bazės vaidmenį; suteikti objekto teises šiam vaidmeniui kuriant objektus. Taip pat turite programos naudotoją su vaidmeniu. Sukūrus programos objektus ir suteikus prieigą prie šio vaidmens, programos vartotojas gali pasiekti objektus.