Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Oracle Web Server (PL/SQL Cartridge) QUESTION !

Re: Oracle Web Server (PL/SQL Cartridge) QUESTION !

From: Thomas Kyte <tkyte_at_us.oracle.com>
Date: Wed, 16 Sep 1998 14:30:56 GMT
Message-ID: <3606ca0e.82022151@192.86.155.100>


A copy of this was sent to sokol_at_opsb.ru (if that email address didn't require changing) On Wed, 16 Sep 1998 13:17:00 GMT, you wrote:

>Hello all.
>
>I'm create stored procedure HELLO in user schema USER1.
>if I call http://ows:8000/USER1_AGENT/plsql/HELLO all OK!
>
>I'm create public synonym PS_HELLO for HELLO and grant execute
>on PS_HELLO to USER2
>
>If I try call http://ows:8000/USER2_AGENT/plsql/PS_HELLO
>I get empty page with line: Content-type: text/html
>
>Help me anyone or explain situation.
>
>-----== Posted via Deja News, The Leader in Internet Discussion ==-----
>http://www.dejanews.com/rg_mkgrp.xp Create Your Own Free Member Forum

This happens when you have more then one copy of the toolkit installed (htp, htf, owa, etc packages).

user1_agent writes its output to the htp package. this is probably user1_agent.htp.

user2_agent reads its output from the htp package. this is probably user2_agent.htp.

When you run the procedure as user1_agent, it reads and writes the output from/to the same package -- hence there is data.

when you run that procedure as user2_agent, it WRITES the data to user2_agent.htp but READS the data from user2_agent.htp -- hence NO DATA.

The solution I use (and in OAS 4 it will install in a similar fashion)

1- drop ALL occurrences of the toolkit from ALL SCHEMAS in your database.

2- create a user, say OWS, and grant connect, dba to this user (we will revoke this later)

3- log in as that user

4- run the script owains.sql (found in $ORACLE_HOME/ows2*/admin for for ows2.x and $ORACLE_HOME/ows/3.0/admin/owains.sql for 3.x) using SVRMGRL (or issue set define off in sqlplus before running it)

5- grant execute on each and every package to public

6- create public synonyms for each and every package

7- log on as another DBA and revoke connect, dba from OWS

You now have a user that owns code but cannot log in and only has public priveleges. All references to htp/htf/owa/etc will goto this schema.

If you applications make use of the dynamic sql functions in owa_util such as tableprint and cellsprint and such, you will need to install ONLY the owa_util package in these developers schemas. They would run pubutil.sql and privutil.sql found in the directories referenced in step 4 above. They will need to do this since the dynamic sql is run with the privs of the owner of the owa_util package and the 'ows' user has no privs so most dbms_sql calls will fail.  

Thomas Kyte
tkyte_at_us.oracle.com
Oracle Government
Herndon VA

--
http://govt.us.oracle.com/ -- downloadable utilities  



Opinions are mine and do not necessarily reflect those of Oracle Corporation  

Anti-Anti Spam Msg: if you want an answer emailed to you, you have to make it easy to get email to you. Any bounced email will be treated the same way i treat SPAM-- I delete it. Received on Wed Sep 16 1998 - 09:30:56 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US