[
https://issues.apache.org/jira/browse/DERBY-2109?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12561092#action_12561092
]
Daniel John Debrunner commented on DERBY-2109:
----------------------------------------------
Right I was seeing authorization identifier as a value that resulted from
applying the rules of section 5.2/5.4 to the identifiers, but strictly speaking
that's not true. Then as Dag points out we are really talking about user
identifier for authentication, though possibly authorization identifier for
authorization.
So I think we can agree that a user has a unique identity, can we call this
UID? This corresponds to what is stored in the system tables.
So a user identifier is a mechanism of representing a UID in a SQL statement
using SQL regular or delimited identifiers. Section 5.2/5.4 provides the rules
for this mapping.
Derby's Java code and property files use the same syntax rules as SQL's user
identifier to represent a UID.
So the concept of UserName and user identifier are actually the same, so we
should drop UserName and use user identifier.
[so that's what I meant by the SQL standard defined the rules from user name to
authorization identifier - which is really user identifier to UID]
authorization identifier is defined by the SQL spec and can represent a user
identifier or a role name.
So if SystemPrincipal represents a user then its input format should be that of
a user identifier. I think if we ever wanted to add role support to the policy
file then a RolePrincipal would be clearer than having roles and users mixed in
the same Principal class.
Rick I think you seem to be saying that a system authentication implementation
could treat regular user identifiers of fred and FRED as different. This then
contradicts the very definition of user identifier, so it would need a new set
of terms to describe this. This seems to go against the existing definitions.
> System privileges
> -----------------
>
> Key: DERBY-2109
> URL: https://issues.apache.org/jira/browse/DERBY-2109
> Project: Derby
> Issue Type: New Feature
> Components: Security
> Affects Versions: 10.3.1.4
> Reporter: Rick Hillegas
> Assignee: Martin Zaun
> Attachments: DERBY-2109-02.diff, DERBY-2109-02.stat,
> derby-2109-03-javadoc-see-tags.diff, DERBY-2109-04.diff, DERBY-2109-04.stat,
> DERBY-2109-05and06.diff, DERBY-2109-05and06.stat, DERBY-2109-07.diff,
> DERBY-2109-07.stat, DERBY-2109-08.diff, DERBY-2109-08.stat,
> DERBY-2109-08_addendum.diff, DERBY-2109-08_addendum.stat,
> SystemPrivilegesBehaviour.html, systemPrivs.html, systemPrivs.html,
> systemPrivs.html, 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.
-
You can reply to this email to add a comment to the issue online.