Re: Package namespace and Safe init cleanup for plperl [PATCH]
| От | Tim Bunce |
|---|---|
| Тема | Re: Package namespace and Safe init cleanup for plperl [PATCH] |
| Дата | |
| Msg-id | 20100213101755.GV373@timac.local обсуждение исходный текст |
| Ответ на | Re: Package namespace and Safe init cleanup for plperl [PATCH] (Andrew Dunstan <andrew@dunslane.net>) |
| Ответы |
Re: Package namespace and Safe init cleanup for plperl
[PATCH]
|
| Список | pgsql-hackers |
On Fri, Feb 12, 2010 at 07:57:15PM -0500, Andrew Dunstan wrote: > Alex Hunsaker wrote: > > Yes it could allow people who > >can set the plperl.*_init functions to muck with the safe. As an > >admin I could also do that by setting plperl.on_init and overloading > >subs in the Safe namespace or switching out Safe.pm. > > It's quite easy to subvert Safe.pm today, sadly. You don't need > on*init, nor do you need to replace the System's Safe.pm. I'm not > going to tell people how here, but it took me all of a few minutes > to discover and verify when I went looking a few weeks ago, once I > thought about it. > > But that's quite different from us providing an undocumented way to > expose arbitrary objects to the Safe container. In that case *we* > become responsible for any insecure uses, and we don't even have the > luxury of having put large warnings in the docs, because there > aren't any docs. I wish I understood better how PostgreSQL developers would be responsible for a DBA using an undocumented hack. In my view the DBA is clearly responsible in that case. If it's not documented it's not supported. > Another objection is that discussion on this facility has been > pretty scant. I think that's putting it mildly. Maybe it's been > apparent to a few people what the implications are, but I doubt it's > been apparent to many. That makes me quite nervous, which is why I'm > raising it now. > > Tim mentioned in his reply that he'd be happy to put warnings in > plc_safe_ok.pl. But that file only exists in the source - it's > turned into header file data as part of the build process, so > warnings there will be seen by roughly nobody. > > I still think if we do this at all it needs to be documented and > surrounded with appropriate warnings. I'm away for a day or so (for my wedding anniversary) but I'll have an updated patch, with a clean well-documented API, for consideration by Monday morning. Tim.
В списке pgsql-hackers по дате отправления: