Eenvoudigste Manier Om Oracle Directory-toegang Geweigerd Te Herstellen

Haal vandaag nog de beste Windows-reparatietool. 100% tevredenheidsgarantie of uw geld terug.

Als u de toegang tot Oracle Directory wordt ontzegd, kan deze blogpost helpen.

Kunnen database-permissies in elke rol worden gegeven of moet u zonder problemen het gebruikersschema krijgen? Ik heb in feite een situatie waarin ik geen bestand kan genereren op bijna elk Unix-bestandssysteem. Een klant waar ik mee werk houdt vol dat veel of alle rechten die verband houden met de machtigingen belangrijk zijn en normaal niet rechtstreeks aan de man of vrouw / het schema worden verleend vanwege beveiligingsproblemen. Ik mag GEEN DIRECTORY MAKEN in mijn database en ook dit kan ik niet proberen door de gebruiker / het schema rechtstreeks een bepaalde stijl van privilege te geven. Merk op dat ik dit voorbeeld heb opgeschoond, zodat ik deze code niet heb getest.

Op ons systeem slaat Oracle bestanden in feite op als de eigenaar “Oracle” en zelfs als de staf “dba”. Ik heb een specifiek servicewachtwoord genaamd “my_account” en deel “my_group”. De map “/ my_apps / my_files” past bij “my_account” en “my_group” in sommige squadrons. Machtigingen voor “/ my_apps my_files” 770 of lees / typ / voer uit voor stuurprogramma en bereik en geen machtigingen voor anderen. Ik vroeg de Unix-beheerder om de groep “my_group” te produceren voor een Oracle-gebruiker “oracle”.

drwxrwx — twomy_account my_group 1024 3 juni 10:04 am nu my_files

Het lijkt alsof het vaak rechtstreeks bij de bezoeker moet zijn. Hier is een voorbeeld voor Windows (dus we hebben alle Unix buiten beschouwing gelaten)

SQL> meestal conn versus as sysdbaDe grens.SQL> CREATE OR DIRECTORY vervangt MY_DIR AS ‘c: temp’;De index is gemaakt.SQL>SQL> CREER RLE MON_ROLE;De rol is aangemaakt.SQL> GRANT SCHRIJF lezen, IN DIRECTORY MY_DIR TO MY_ROLE;Grant deed het goed.SQL>SQL-verbinding> GRANT, MY_ROLE TO MY_USER op de geïdentificeerde my_user;Grant deed het goed.SQL>SQL> GRANT UITVOEREN OP SYS.UTL_FILE NAAR MY_USER;De subsidie ​​is succesvol.sql>sql> OF PROCEDURE VERVANG MY_USER.TEST_WRITEFILE IS alleen net out_File UTL_FILE.FILE_TYPE; 3 uitgangen out_File: = UTL_FILE.FOPEN (‘MY_DIR’, ‘test.txt’, ‘W’); een klein beetje UTL_FILE .PUT_LINE (out_File, ‘Hello World’); 6 UTL_FILE.FCLOSE (out_File); talrijke EINDE; 3 /De activiteit is aangemaakt.SQL>SQL>SQL> verbind mijn_gebruiker voor elke mijn_gebruikerDe grens.SQL> voer TEST_WRITEFILE uitSTART TEST_WRITEFILE; EINDE;*FOUT in 1:ORA-29289: invoerrecht voor trunkdirectory geweigerdORA-06512: gevonden op SYS.UTL_FILE, regel 41ORA-06512: als u wilt “SYS.UTL_FILE” kabel 478ORA-06512: in “MY_USER.TEST_WRITEFILE”, 4ORA-06512 bel ons via telefoonlijn 1SQL> verbinding / hoewel sysdbaVerbonden.sql> LEES, SCHRIJF NAAR MIJN_DIRECTORY IN DE DIRECTORY my_user;Grant deed het goed.SQL> maak verbinding met my_user / my_userDe grens.SQL>SQL> voer TEST_WRITEFILE uitPL / SQL-procedure Shena succesvol afgerond.SQL>SQL>

Ten slotte hebt u een bewerking geprobeerd die deze bevat, die de volgende software bevat:

directe toegang tot oracle-directory geweigerd

 verklaar bestandsdescriptor utl_file.file_type; 
uiteengezet

bestandsdescriptor: vertaalt naar utl_file.FOpen ('TEST_DIR', 'test.txt', 'w'); utl_file.put_line (file_handle, 'test'));


utl_file.FFlush (file_handle);
utl_file.Directory fclose (file_handle);
einde;
per

ora-29289: zie afgewezen
ORA-06512: voor "SYS.UTL_FILE", regel 33
ORA-06512: voor "SYS.UTL_FILE", regel 436
ORA - 06512: voor commando sommige

Merk op dat we dat bestand hebben geopend voor het schrijven van artikelen, maar hetzelfde geldt in gevallen waarin het bestand open is voor meteruitlezing.

De foutmelding kan eenvoudigweg betekenen dat u niet bevoegd bent om ervoor te zorgen dat u een SCHRIJFhulpmiddel (of READ-privilege) maakt (of leest) op het directorysite-object dat wordt gebruikt in de doeldirectory-site waar het zich bevindt.

Juiste log – directory TEST_DIR – deze methode is waar, anders zul je zoeken naar ORA-29280.

De gebruikelijke manier om het probleem echt op te starten, is door de DBA van een persoon te vragen het volgende te doen:

oracle directory begin te bladeren geweigerd

 LEES SUBSIDIE UIT TEST_DIR Naar gebruikersnaam 
- of
SCHRIJVEN IN TEST_DIR TOESTAAN Naar gebruikersnaam

Deze foutles verwerkt ook dat u geen machtiging CREATE DIRECTORY hebt, omdat anders

U kunt bovendien veel van deze specifieke mappen die u hebt gemaakt lezen / of schrijven, of zelfs die welke andere gebruikers hebben gekocht.

Zonder het recht CREATE ENIGE DIRECTORY, moet iemand anders mappen voor u maken (meestal de DBA) en u expliciet lees- en / of / of schrijfrechten verlenen voordat het hoofdbestand wordt opgeslagen waar het concept met succes kan worden geopend.

U kunt eenvoudig bepalen of u zelf directory-objecten kunt maken:

 
Selecteer autorisatie user_sys_privs
voor elke

PRIVILEGE


---------
MAAK PROCEDURE
MAAK TAAK
MAAK TYPE < br > MAAK SYNONIEM
MAAK EEN CLUSTER
MAAK EEN TABEL

MAAK ELKE DIRECTORY MAAK EEN VIEW


MAAK EEN SESSIE
MAAK EEN Trigger
MAAK EEN SEQUENTIE
MAAK EEN BEELDMATERIAAL

Met dit schemaprivilege is het perfect mogelijk om het volgende script positief uit te voeren zonder de databasebeheerder te vragen om schrijfmachtiging voor TEST_DIR:

 maak meestal de map test_dir aan als 'C:  Temp' 
/ * je zoekt een nieuwe C: Temp vanwege een daarvoor geschikt pad. Maar voor jouw platform of omgeving 6 . declare /
/

startdescriptor is utl_file. soort declareren;
start
file_handle: betekent utl_file.FOpen ('TEST_DIR', 'test.txt', 'w');
utl_file.put_line (file_handle, 'test');
utl_file. FFlush (bestandsbeschrijving);
utl_file. fclose (file_handle);
einde;
/

De totaaloplossing voor al uw Windows-gerelateerde problemen

Is uw computer traag en onstabiel? Wordt u geplaagd door mysterieuze fouten en maakt u zich zorgen over gegevensverlies of hardwarestoringen? Dan heb je Reimage nodig – de ultieme software voor het repareren van Windows-problemen. Met Reimage kun je een groot aantal problemen met slechts een paar klikken oplossen, waaronder het gevreesde Blue Screen of Death. De applicatie detecteert ook crashende applicaties en bestanden, zodat je hun problemen snel kunt oplossen. En het beste van alles: het is helemaal gratis! Dus wacht niet langer - download Reimage nu en geniet van een soepele, stabiele en foutloze pc-ervaring.

  • Stap 1: Download en installeer Reimage
  • Stap 2: Open de applicatie en klik op de knop Scannen
  • Stap 3: Selecteer de bestanden of mappen die u wilt herstellen en klik op de knop Herstellen

  • Zonder CREATE ENIGE DIRECTORY toestemming, zal de vrij verklaring met ORA-01031 mislukken: slecht privilege.

    Houd er ook rekening mee dat lijstnamen in UTL_FILE-procedures, in voorkomend geval, gebeurtenisgevoelig zijn.

    Publicatie op ORA-29280

    Ten slotte, op het moment dat u het eigenlijke directory-object selecteert om paden voor bestandstechniek voor lees-/schrijfbedrijven op te geven, hoeft u zich geen zorgen meer te maken over het instellen van de juiste UTL_FILE_DIR-parameter.

    Herstel Windows-fouten en bescherm uw computer tegen bestandsverlies, malware en hardwarestoringen

    Easiest Way To Fix Oracle Directory Access Denied
    Le Moyen Le Plus Simple Qui Aidera à Réparer Le Refus D’accès à L’annuaire Oracle
    Der Einfachste Weg, Um Oracle-Verzeichniszugriff Verweigert Zu Beheben
    Enklaste Sättet Att åtgärda Oracle Directory Access Need
    오라클 디렉토리 액세스 거부를 수정하는 가장 쉬운 방법
    Najłatwiejszy Sposób Na Naprawę Odmowy Dostępu Do Katalogu Oracle
    Il Modo Più Semplice Per Correggere L’accesso Alla Directory Oracle Negato
    La Forma Más Sencilla De Reparar El Acceso Denegado Al Directorio De Oracle
    Maneira Mais Fácil De Corrigir Acesso Negado Ao Oracle Directory
    Самый простой способ окончательно исправить отказ в доступе к Oracle Directory

    Bookmark the permalink.