Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
10.3.1.4
-
None
-
None
-
Security
Description
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).
Attachments
Attachments
Issue Links
- incorporates
-
DERBY-3495 Enable System Privileges checks
- Open
-
DERBY-2466 Allow dynamic reloading of the security policy file
- Closed
- is blocked by
-
DERBY-1387 Add JMX extensions to Derby
- Closed
- is related to
-
DERBY-3532 Invalid & possibly skipped authentication handling when shutting down the network server.
- Open
-
DERBY-3614 Granted SystemPermissions are ignored when granted later with same target and different action
- Open
-
DERBY-5548 Implement a GRANT/REVOKE scheme for authorizing system-wide operations
- Open
-
DERBY-3491 Change SystemPermission to be a two arguement permission with a name (object the permission is on) and an action.
- Closed
- relates to
-
DERBY-2470 No authentication required to restore a backup
- Open
-
DERBY-3535 derby.drda.StartNetworkServer property no longer works gives exception java.lang.NoSuchMethodException: org.apache.derby.impl.drda.NetworkServerControlImpl.<init>(java.lang.String, java.lang.String)
- Closed
-
DERBY-3644 NetworkServerControl.ping() on trunk against 10.3.2.1 and older servers give 'DRDA_InvalidReplyHeader2.S:Invalid reply header from network server: Invalid string . Plaintext connection attempt to an SSL enabled server?'
- Closed
-
DERBY-2264 Restrict shutdown, upgrade, and encryption powers to the database owner
- Closed