Tom Lane wrote:
>>This looks good to me. I only wonder if public should default to world 
>>read and no create?
> 
> 
> That would be non-backwards-compatible.  Since the main reason for
> having the public namespace at all is backwards compatibility of the
> out-of-the-box behavior, I think we have to let it default to world
> write.  DBAs can revoke world write, or even remove the public namespace
> altogether, if they want to run a tighter ship.

Ah yes, I forgot about that aspect.

> 
> Also, if a database owner is not superuser, I do not think he should be
> able to create objects that are marked as belonging to other users.
> At least not in general.  Do we need to make an exception for schemas?
> 

Well, I like to think of the database owner as the superuser within that 
one database. This is similar to (at least) SQL Server and Oracle. But I 
don't think either of those systems have quite this issue because the 
notion of schema and login user are so tightly coupled, something you 
were specifically trying to avoid ;-)



> 
>>Agreed. How would it work though if say I wanted to create a view in the 
>>public schema, which pointed at a table in a schema which has had SELECT 
>>revoked? Same question for a public function/private table. It would be 
>>ideal if you could do this.
> 
> 
> AFAICS this would not be checked at creation time, but when someone
> tries to use the view; just the same as now.

Great!

Thanks,

Joe




---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly

Reply via email to