Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 72486 invoked from network); 2 Nov 2004 23:56:07 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 2 Nov 2004 23:56:07 -0000 Received: (qmail 46955 invoked by uid 500); 2 Nov 2004 23:55:59 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 46915 invoked by uid 500); 2 Nov 2004 23:55:59 -0000 Mailing-List: contact dev-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: dev@geronimo.apache.org Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 46891 invoked by uid 99); 2 Nov 2004 23:55:58 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (hermes.apache.org: local policy) Received: from [66.250.40.202] (HELO saturn.opentools.org) (66.250.40.202) by apache.org (qpsmtpd/0.28) with ESMTP; Tue, 02 Nov 2004 15:55:58 -0800 Received: by saturn.opentools.org (Postfix, from userid 500) id E4E5F3EC2; Tue, 2 Nov 2004 18:58:57 -0500 (EST) Received: from localhost (localhost [127.0.0.1]) by saturn.opentools.org (Postfix) with ESMTP id E163AF5BF for ; Tue, 2 Nov 2004 18:58:57 -0500 (EST) Date: Tue, 2 Nov 2004 18:58:57 -0500 (EST) From: Aaron Mulder X-X-Sender: ammulder@saturn.opentools.org To: dev@geronimo.apache.org Subject: Security Refactoring Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N I think I'd like to propose some refactoring of the current security realm, configuration entry, and login module structure. This is related to issues 424, 410, 409, 422, and 419. I'd like to generalize the security realm implementation, and make it take a more arbitrary/configurable list of login modules. That would let you implement features like auditing and lockout as login modules, and hopefully entirely encapsulate Kerberos, SQL, and File access as login modules. Then you pick login modules from here and there and pop them into a general security realm, and off you go. It makes it all much more modular, and lets us reuse the same features across realm types without needing to separately update multiple security realm implementations to handle them. While I'm in there, I'd like to make the ConfigurationEntry process more automatic (since every realm needs one), and remove some of the redundant configuration options for login modules. I'm not sure how best to proceed. I assume that Alan (and perhaps others) are going to want to look this over before it goes in. The easiest way would be to put a code proposal together -- I'm not sure if a branch or a giant patch would be easier -- it seems like they both have disadvantages. I could also try to write it up in sufficient detail for someone else to code, but that feels like it would just introduce additional delay. Any thoughts on this? Thanks, Aaron