"Linddahl" <linddahl@nospamintralite.dk> wrote in message
news:3ee3c67d$0$32522$edfadb0f@dread16.news.tele.dk...
> > > GENERELT : Hvad skal der gøres for at Joakim kan ....."SELECT *
FROM
> > > anders.tblnavn;"
> > > og hvem skal grante eller hvad det hedder
> > >
> > Anders skal skrive:
> >
> > GRANT SELECT ON tblnavn To JOAKIM;
> >
> > Tilsvarende kan du gøre med UPDATE DELETE INSERT.
> >
> > mvh
> > Michael
>
> Ok
Det vil jeg prøve i morgen. Hvis jeg kan logge på som
Anders
> .....
> Hvad nu - når Anders er oprettet af et sql-script fra en leverandør,
> der danner et password ingen kender, ud over leverandørens windows
> application.
>
> Trikset er at "Joakim" fra tid til anden, skal tjekke en logfil
under
> "Anders".
>
> Anders er en windows application, hvor passwordet er skjult i
programmet.
> hm..
> /Johnny
>
Hej,
Som system kan du "grant select any table to joakim". Så kan Joakim
udføre "SELECT * FROM anders.tblnavn".
Joakim kan nu selecte fra hvilken som helst tabel og det kan jo give
nogle sikkerhedmæssige problemer.
Hvis du ønsker en mere sikker løsning kan du lave en bruger, f.eks
"linddahl" som kun du kender passwordet til. Grant select any table
til linddahl. Opret en stored procedure som linddahl, der selecter
data fra anders's tabel. Grant execute på proceduren til joakim. Nu
kan joakim kalde proceduren og få dataene tilbage som resultat, men
joakim har ikke "select any table" rettighed. Det har kun linddahl.
Er de forvirret så bare vent til de har læst denne artikel:
http://www.databasejournal.com/features/oracle/article.php/1574831
eller søg på oracle og invoker i google. Bemærk specielt at
privilegier grantet via en rolle ikke er valide under udførelse af en
procedure. Der kræves direkte grant af det enkelte privilegie.
mvh
Peter Laursen