Return-Path: X-Original-To: apmail-db-derby-dev-archive@www.apache.org Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id DCCDD9575 for ; Tue, 31 Jan 2012 18:26:32 +0000 (UTC) Received: (qmail 18103 invoked by uid 500); 31 Jan 2012 18:26:32 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 17862 invoked by uid 500); 31 Jan 2012 18:26:31 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 17840 invoked by uid 99); 31 Jan 2012 18:26:31 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 31 Jan 2012 18:26:31 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 31 Jan 2012 18:26:30 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 6F2AB1810C9 for ; Tue, 31 Jan 2012 18:26:10 +0000 (UTC) Date: Tue, 31 Jan 2012 18:26:10 +0000 (UTC) From: "Rick Hillegas (Commented) (JIRA)" To: derby-dev@db.apache.org Message-ID: <1546384037.12351.1328034370456.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (DERBY-866) Derby User Management Enhancements MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/DERBY-866?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13197081#comment-13197081 ] Rick Hillegas commented on DERBY-866: ------------------------------------- I have returned to the topic of implementing network password substitution for NATIVE authentication. I do not believe this is possible. NATIVE authentication only works if passwords are hashed by a strong algorithm specified by the derby.authentication.builtin.algorithm property. But password substitution is not possible with these strong algorithms, according to the "Network client security" section of the Admin Guide, and according to the 10.6.2.0 release note accompanying the work on DERBY-4483 (see http://db.apache.org/derby/releases/release-10.6.1.0.html#Note+for+DERBY-4483 ). This makes sense. For password substitution to work with strong algorithms, the network handshake would have to give the client the details about how the password is hashed on disk at the server end--those details would have to be transmitted BEFORE the substitute password is computed by the client. I am not aware of any such negotiation in the Derby network protocol. NATIVE passwords transmitted over the wire must be secured the same way that BUILTIN passwords are secured after the fix to CVE-2009-4269: 1) Both ends of the connection must use a capable JCE which handles the 256 bit primes needed by ClientDataSource.ENCRYPTED_USER_AND_PASSWORD_SECURITY. 2) Or the entire network traffic must be encrypted with SSL/TLS. > Derby User Management Enhancements > ---------------------------------- > > Key: DERBY-866 > URL: https://issues.apache.org/jira/browse/DERBY-866 > Project: Derby > Issue Type: Improvement > Components: Services > Affects Versions: 10.2.1.6 > Reporter: Francois Orsini > Assignee: Rick Hillegas > Attachments: Derby_User_Enhancement.html, Derby_User_Enhancement_v1.1.html, DummyAuthenticator.java, UserManagement.html, UserManagement.html, UserManagement.html, UserManagement.html, UserManagement.html, derby-866-01-aa-sysusers.diff, derby-866-01-ab-sysusers.diff, derby-866-02-ag-createDropUser.diff, derby-866-03-aa-resetModifyPassword.diff, derby-866-03-ab-resetModifyPassword.diff, derby-866-04-aa-fixRolesTest.diff, derby-866-05-aa-grantRevoke.diff, derby-866-06-aa-upgradeFrom10.1.diff, derby-866-07-aa-removeSQLPassword.diff, derby-866-08-aa-passwordHasher.diff, derby-866-08-ab-passwordHasher.diff, derby-866-08-ad-passwordHasher.diff, derby-866-09-ad-nativeAuthenticationService.diff, derby-866-09-ae-nativeAuthenticationServiceWithTests.diff, derby-866-10-ac-propChanging.diff, derby-866-11-aa-upgradeTest.diff, derby-866-12-ac-passwordExpiration.diff, dummyCredentials.properties > > > Proposal to enhance Derby's Built-In DDL User Management. (See proposal spec attached to the JIRA). > Abstract: > This feature aims at improving the way BUILT-IN users are managed in Derby by providing a more intuitive and familiar DDL interface. Currently (in 10.1.2.1), Built-In users can be defined at the system and/or database level. Users created at the system level can be defined via JVM or/and Derby system properties in the derby.properties file. Built-in users created at the database level are defined via a call to a Derby system procedure (SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY) which sets a database property. > Defining a user at the system level is very convenient and practical during the development phase (EOD) of an application - However, the user's password is not encrypted and consequently appears in clear in the derby.properties file. Hence, for an application going into production, whether it is embedded or not, it is preferable to create users at the database level where the password is encrypted. > There is no real ANSI SQL standard for managing users in SQL but by providing a more intuitive and known interface, it will ease Built-In User management at the database level as well as Derby's adoption. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira