You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by vt...@apache.org on 2004/06/08 04:46:41 UTC

svn commit: rev 20893 - in incubator/directory/janus/trunk: . core/impl/src/java/org/apache/janus/authentication/realm xdocs

Author: vtence
Date: Mon Jun  7 19:46:41 2004
New Revision: 20893

Added:
   incubator/directory/janus/trunk/core/impl/src/java/org/apache/janus/authentication/realm/EqualMatcher.java
   incubator/directory/janus/trunk/core/impl/src/java/org/apache/janus/authentication/realm/UsernameCredentialMatcher.java
Removed:
   incubator/directory/janus/trunk/core/impl/src/java/org/apache/janus/authentication/realm/EqualCredentials.java
Modified:
   incubator/directory/janus/trunk/maven.xml
   incubator/directory/janus/trunk/project.xml
   incubator/directory/janus/trunk/xdocs/index.xml
Log:
fixed last commit

Added: incubator/directory/janus/trunk/core/impl/src/java/org/apache/janus/authentication/realm/EqualMatcher.java
==============================================================================
--- (empty file)
+++ incubator/directory/janus/trunk/core/impl/src/java/org/apache/janus/authentication/realm/EqualMatcher.java	Mon Jun  7 19:46:41 2004
@@ -0,0 +1,37 @@
+/*
+ *   Copyright 2004 The Apache Software Foundation
+ *
+ *   Licensed under the Apache License, Version 2.0 (the "License");
+ *   you may not use this file except in compliance with the License.
+ *   You may obtain a copy of the License at
+ *
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing, software
+ *   distributed under the License is distributed on an "AS IS" BASIS,
+ *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *   See the License for the specific language governing permissions and
+ *   limitations under the License.
+ *
+ */
+package org.apache.janus.authentication.realm;
+
+import org.apache.janus.authentication.CredentialSet;
+
+/**
+ * @author <a href="mailto:directory-dev@incubator.apache.org">Apache Directory Project</a>
+ */
+public class EqualMatcher implements CredentialsMatcher
+{
+    private final CredentialSet m_toMatch;
+
+    public EqualMatcher( CredentialSet credentials )
+    {
+        m_toMatch = credentials;
+    }
+
+    public boolean matches( CredentialSet creds )
+    {
+        return m_toMatch.equals( creds );
+    }
+}

Added: incubator/directory/janus/trunk/core/impl/src/java/org/apache/janus/authentication/realm/UsernameCredentialMatcher.java
==============================================================================
--- (empty file)
+++ incubator/directory/janus/trunk/core/impl/src/java/org/apache/janus/authentication/realm/UsernameCredentialMatcher.java	Mon Jun  7 19:46:41 2004
@@ -0,0 +1,39 @@
+/*
+ *   Copyright 2004 The Apache Software Foundation
+ *
+ *   Licensed under the Apache License, Version 2.0 (the "License");
+ *   you may not use this file except in compliance with the License.
+ *   You may obtain a copy of the License at
+ *
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing, software
+ *   distributed under the License is distributed on an "AS IS" BASIS,
+ *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *   See the License for the specific language governing permissions and
+ *   limitations under the License.
+ *
+ */
+package org.apache.janus.authentication.realm;
+
+import org.apache.janus.authentication.Credential;
+import org.apache.janus.authentication.CredentialSet;
+
+/**
+ * @author <a href="mailto:directory-dev@incubator.apache.org">Apache Directory Project</a>
+ */
+public class UsernameCredentialMatcher implements CredentialsMatcher
+{
+    private final Credential m_username;
+
+    public UsernameCredentialMatcher( Credential username )
+    {
+        m_username = username;
+    }
+
+    public boolean matches( CredentialSet creds )
+    {
+        Credential username = creds.getCredential( UsernamePasswordAuthentication.USERNAME );
+        return username.equals( m_username );
+    }
+}

Modified: incubator/directory/janus/trunk/maven.xml
==============================================================================
--- incubator/directory/janus/trunk/maven.xml	(original)
+++ incubator/directory/janus/trunk/maven.xml	Mon Jun  7 19:46:41 2004
@@ -20,18 +20,7 @@
         <maven:reactor
             basedir="${basedir}"
             includes="core/*/project.xml,script/project.xml"
-            goals=""
-            banner="Building sub-project:"
-            ignoreFailures="false"/>
-    </goal>
-
-    <goal name="install-jars"
-        description="Installs the sub-projects jars to the local repo.">
-
-        <maven:reactor
-            basedir="${basedir}"
-            includes="core/*/project.xml,script/project.xml"
-            goals="jar:install"
+            goals="install:jar"
             banner="Building sub-project:"
             ignoreFailures="false"/>
     </goal>

Modified: incubator/directory/janus/trunk/project.xml
==============================================================================
--- incubator/directory/janus/trunk/project.xml	(original)
+++ incubator/directory/janus/trunk/project.xml	Mon Jun  7 19:46:41 2004
@@ -19,24 +19,6 @@
 
     <issueTrackingUrl>http://nagoya.apache.org/jira/secure/BrowseProject.jspa?id=10400</issueTrackingUrl>
     <siteAddress>directory.apache.org</siteAddress>
-    <siteDirectory>/home/akarasulu/public_html</siteDirectory>
-    <distributionDirectory>/home/akarasulu/public_html/dist</distributionDirectory>
-
-    <repository>
-        <connection/>
-        <!--
-          scm:svn:http://cvs.apache.org/repos/asf/incubator/directory/janus/trunk
-        </connection>
-        -->
-
-        <url>
-        http://cvs.apache.org/viewcvs.cgi/incubator/directory/janus/trunk?root=Apache-SVN
-        </url>
-
-        <developerConnection>
-        http://cvs.apache.org/repos/asf/incubator/directory/janus/trunk
-        </developerConnection>
-    </repository>
 
     <shortDescription>Janus Authentication, Authorization and Accounting Framework</shortDescription>
 
@@ -62,75 +44,6 @@
         </mailingList>
     </mailingLists>
 
-    <developers>
-        <developer>
-            <name>Alex Karasulu</name>
-            <id>akarasulu</id>
-            <email>akarasulu at apache.org</email>
-            <roles>
-                <role>Founder</role>
-                <role>Developer</role>
-                <role>Architect</role>
-                <role>Lead Developer</role>
-            </roles>
-        </developer>
-        <developer>
-            <name>Robb Penoyer</name>
-            <id>rpenoyer</id>
-            <email>rpenoyer at apache.org</email>
-            <roles>
-                <role>Developer</role>
-            </roles>
-        </developer>
-        <developer>
-            <name>Jeff Machols</name>
-            <id>jmachols</id>
-            <email>jmachols at apache.org</email>
-            <roles>
-                <role>Developer</role>
-                <role>Infrastructure Support</role>
-            </roles>
-        </developer>
-        <developer>
-            <name>Wes McKean</name>
-            <id>wesmckean</id>
-            <email>wesmckean at apache.org</email>
-            <roles>
-                <role>Developer</role>
-            </roles>
-        </developer>
-        <developer>
-            <name>Vincent Tence</name>
-            <id>vtence</id>
-            <email>vtence at apache.org</email>
-            <roles>
-                <role>Developer</role>
-            </roles>
-        </developer>
-        <developer>
-            <name>Noel Bergman</name>
-            <id>noeljb</id>
-            <email>noeljb at apache.org</email>
-            <roles>
-                <role>Mentor</role>
-                <role>Advisor</role>
-                <role>Sponsor</role>
-            </roles>
-        </developer>
-        <developer>
-            <name>Stephen McConnell</name>
-            <id>mcconnell</id>
-            <email>mcconnell at apache.org</email>
-            <roles>
-                <role>Mentor</role>
-                <role>Sponsor</role>
-                <role>Advisor</role>
-            </roles>
-        </developer>
-    </developers>
-
-    <contributors/>
-
     <licenses>
       <license>
         <name>Apache 2.0 License</name>
@@ -143,11 +56,6 @@
 
     <dependencies>
         <dependency>
-            <groupId>mockobjects</groupId>
-            <artifactId>mockobjects-core</artifactId>
-            <version>0.09</version>
-        </dependency>
-        <dependency>
             <groupId>jmock</groupId>
             <artifactId>jmock</artifactId>
             <version>1.0.0</version>
@@ -201,20 +109,5 @@
 
         <jars/>
     </build>
-
-    <reports>
-        <report>maven-jdepend-plugin</report>
-        <report>maven-changes-plugin</report>
-        <report>maven-changelog-plugin</report>
-        <report>maven-file-activity-plugin</report>
-        <report>maven-developer-activity-plugin</report>
-        <report>maven-javadoc-plugin</report>
-        <report>maven-jxr-plugin</report>
-        <report>maven-junit-report-plugin</report>
-        <report>maven-tasklist-plugin</report>
-        <report>maven-jellydoc-plugin</report>
-        <report>maven-pmd-plugin</report>
-        <report>maven-clover-plugin</report>
-    </reports>
 </project>
 

Modified: incubator/directory/janus/trunk/xdocs/index.xml
==============================================================================
--- incubator/directory/janus/trunk/xdocs/index.xml	(original)
+++ incubator/directory/janus/trunk/xdocs/index.xml	Mon Jun  7 19:46:41 2004
@@ -7,53 +7,110 @@
 
     <body>
         <section name="Overview">
-        <p>
-        Janus is an Authentication, Authorization and Accounting framework for
+            <p>
+        Janus is an effort to develop an Authentication, Authorization and Accounting framework for
         building security infrastructures.
-        </p>
-        <p>
-        The Janus sub-project defines the Janus security framework and provides default implementations:
-            <ul>
-                <li>A XML file based implementation</li>
-                <li>A RDMS implementation (work in progress)</li>
-                <li>A LDAP implementation (to come)</li>
-            </ul>
-        </p>
+            </p>
+            <p>
+        Security is a broad and complex domain, which refers to ways of protecting sensitive
+        resources from unauthorized access. This is usually done with a combination of authentication
+        - to prove an individual's identity -, and authorization - to grant or deny an operation on a resource.
+        Most security measures also involves some form of cryptography: secure digests to preserve data integrity,
+        data encryption mechanisms to protect data
+        access from individuals without proper authorization and digital signatures to prove authenticity of some sort.
+            </p>
         </section>
-        
-        <section name="Authentication">
-        <p>
-        Authentication is about finding out if someone is who he/she claims to
-        be. This is done by presenting some proof of identity, which usually can
-        take the form of username/password, digital signature, etc.
-        </p>
+
+        <section name="Goals">
+            <p>
+        Janus is an attempt to provide a framework for developing complex security infrastructures.
+        It addresses the Authentication, Authorization and Accounting concerns of secure applications or systems.
+            </p>
+            <p>
+        Janus tries to define proper abstractions for security concepts to be a generic and flexible security framework
+        on top of which complex secure applications can be built. It does not deal with cryptography mechanisms,
+        since cryptography is a mean of attaining security goals. Yet, since Janus has been thought to be flexible,
+        it is easy to plug-in your own implementations of Janus abstractions to use cryptography for instance.
+            </p>
         </section>
-        
-        <section name="Authorization">
-        <p>
-        Authorization is about, once a user has been identified, determining if
-        hs/she is authorized to do something. A successful authorization results in the user
-        being granted the permission to perform an operation on a resource.
-        </p>
 
-            <subsection name="Role-Based Access Control">
-            </subsection>
+        <section name="Features">
+            <p>
+        The Janus sub-project defines the Janus security framework and provides default implementations of authentication,
+        authorization and accounting components.
+
+        We believe Janus has some unique features that set it apart from existing solutions:
+                <ul>
+                    <li>Plain Java Object framework</li>
+                    <li>Core has no dependency</li>
+                    <li>IoC friendly (our favorite pattern)</li>
+                    <li>Test-Driven developed</li>
+                    <li>No coupling with some logging framework you don't want</li>
+                    <li>Tested so you don't have to do it</li>
+                    <li>Modular design - Use what you need, no more</li>
+                </ul>
+            </p>
+        </section>
 
-            <subsection name="Users and Roles"></subsection>
+        <section name="Roadmap">
+            <p>
+        Janus is already stable enough to build simple application security. Here's what we're currently targetting:
+                <ul>
+                    <li>Username/password basic authentication (done)</li>
+                    <li>Role based access control (done)</li>
+                    <li>XML security realm for use with username/password authentication (done)</li>
+                    <li>XML security policy for use with role-based access control (done)</li>
+                    <li>Groups of principals (to come)</li>
+                    <li>Role hierarchies (to come)</li>
+                    <li>RDMS security realm (to come)</li>
+                    <li>RDMS security policy (to come)</li>
+                    <li>LDAP security realm (to come)</li>
+                    <li>LDAP security policy (to come)</li>
+                    <li>Dynamic separation of duties (planned)</li>
+                    <li>Accounting (planned)</li>
+                </ul>
+            </p>
+        </section>
 
-            <subsection name="Roles and Permissions"></subsection>
+        <section name="Security">
 
-            <subsection name="Traditional Access Control Technologies">
+            <subsection name="Authentication">
+                <p>
+        Authentication is the process of validating an individual's identity. It's about finding out
+        if an individual is who he/she claims to be.
+
+        This is done by presenting some proof of identity, which usually can take the form of username/password,
+        digital signature, etc. The idea is that each individual can be recognized by unique information that
+        differentiates him or her from other individuals.
+                </p>
             </subsection>
 
-            <subsection name="Advantages of Role-Based Access Control"></subsection>
-        </section>
+            <subsection name="Authorization">
+                <p>
+        Authorization is about, once a user has been authenticated, determining if
+        hs/she is authorized to do something. A successful authorization results in the user
+        being granted the permission to perform an operation on a resource. A failed authorization will
+        result in the denial of the same permission.
+                </p>
+<!--
+                <subsection name="Role-Based Access Control">
+                </subsection>
+
+                <subsection name="Users and Roles"></subsection>
+
+                <subsection name="Roles and Permissions"></subsection>
+
+                <subsection name="Traditional Access Control Technologies">
+                </subsection>
 
-        <section name="Accounting">
-        <p>
+                <subsection name="Advantages of Role-Based Access Control"></subsection>
+                -->
+            </subsection>
+            <subsection name="Accounting">
+                <p>
         Accounting is the concern of collecting resource access/consumption data for the purposes of auditing.
-        </p>
+                </p>
+            </subsection>
         </section>
-
     </body>
 </document>