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 180C89832 for ; Fri, 2 Dec 2011 20:02:02 +0000 (UTC) Received: (qmail 83050 invoked by uid 500); 2 Dec 2011 20:02:01 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 83034 invoked by uid 500); 2 Dec 2011 20:02:01 -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 83027 invoked by uid 99); 2 Dec 2011 20:02:01 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 02 Dec 2011 20:02:01 +0000 X-ASF-Spam-Status: No, hits=-2001.2 required=5.0 tests=ALL_TRUSTED,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; Fri, 02 Dec 2011 20:02:00 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 8CA01BC19C for ; Fri, 2 Dec 2011 20:01:40 +0000 (UTC) Date: Fri, 2 Dec 2011 20:01:40 +0000 (UTC) From: "Rick Hillegas (Commented) (JIRA)" To: derby-dev@db.apache.org Message-ID: <1460609254.35725.1322856100577.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=13161824#comment-13161824 ] Rick Hillegas commented on DERBY-866: ------------------------------------- Thanks for reading the spec, Dag. Some responses follow. I will incorporate your suggestions into the next rev of the spec: 1) I can see the value of warning users that their password's lifetime is running out. How about: a) Raise a warning if the password will expire within a week. b) Raise an exception if the password has expired. 2) I will try to describe the bootstrapping mechanism better in the next rev of the spec. The idea is that the bootstrap credentials are supplied in the connection arguments when the database is created. If the database is being newly created, then we just trust the bootstrap credentials. The credentials could be supplied by the URL or in the Properties object which accompanies the connection attempt or in the DataSource. Derby will internally call createUser() to persist credentials for the DBO when the database is created. It is true that the current JDBC connection methods suffer from the String vulnerability described by the link above. I expect that the JDBC expert group will address this vulnerability in JDBC 4.2. In Java 8 I expect that users will be able to state their passwords in a safer way. 3) Agreed. 4) Thanks, I'll clean that up. 5) Thanks, I'll add a note about this to the documentation section. SSL is essential for safeguarding credentials when using the Derby network client. Thanks, -Rick > 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 > Attachments: Derby_User_Enhancement.html, Derby_User_Enhancement_v1.1.html, DummyAuthenticator.java, UserManagement.html, 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