[ 
http://issues.apache.org/jira/browse/DERBY-2109?page=comments#action_12458573 ] 
            
Rick Hillegas commented on DERBY-2109:
--------------------------------------

I do not understand the need to qualify createDatabase privilege with a list of 
databases which the user is allowed to create. This is not how other vendors 
manage this privilege. DB2, Oracle, and Postgres all have a generic 
createDatabase privilege. If you have this privilege, then you can create as 
many databases as you want. I think that the DB2 documentation is most clear 
about the danger associated with this privilege. This is discussed in the DB2 
SQL Reference manual, volume 1, in the section on "Authorization and 
privileges". For DB2, the ability to create databases is a superpower granted 
to the SYSCTL role and the point is to control who can consume system 
resources, including the power to consume disk space. In general, whether you 
can consume disk space is a consequence of the ability to create a database and 
is not refined by how many databases you can create.

I don't understand what additional security hole is plugged by qualifying the 
createDatabase privilege with a list of database names. I recommend that we 
follow the lead of these other vendors and implement this as a general 
privilege whose purpose is to control the power to consume disk space.

> System privileges
> -----------------
>
>                 Key: DERBY-2109
>                 URL: http://issues.apache.org/jira/browse/DERBY-2109
>             Project: Derby
>          Issue Type: New Feature
>          Components: Security
>    Affects Versions: 10.3.0.0
>            Reporter: Rick Hillegas
>             Fix For: 10.3.0.0
>
>         Attachments: systemPrivs.html
>
>
> Add mechanisms for controlling system-level privileges in Derby. See the 
> related email discussion at 
> http://article.gmane.org/gmane.comp.apache.db.derby.devel/33151.
> The 10.2 GRANT/REVOKE work was a big step forward in making Derby more  
> secure in a client/server configuration. I'd like to plug more client/server 
> security holes in 10.3. In particular, I'd like to focus on  authorization 
> issues which the ANSI spec doesn't address.
> Here are the important issues which came out of the email discussion.
> Missing privileges that are above the level of a single database:
> - Create Database
> - Shutdown all databases
> - Shutdown System
> Missing privileges specific to a particular database:
> - Shutdown that Database
> - Encrypt that database
> - Upgrade database
> - Create (in that Database) Java Plugins (currently  Functions/Procedures, 
> but someday Aggregates and VTIs)
> Note that 10.2 gave us GRANT/REVOKE control over the following  
> database-specific issues, via granting execute privilege to system  
> procedures:
> Jar Handling
> Backup Routines
> Admin Routines
> Import/Export
> Property Handling
> Check Table
> In addition, since 10.0, the privilege of connecting to a database has been 
> controlled by two properties (derby.database.fullAccessUsers and 
> derby.database.defaultConnectionMode) as described in the security section of 
> the Developer's Guide (see 
> http://db.apache.org/derby/docs/10.2/devguide/cdevcsecure865818.html).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to