Novell IChains

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2047 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Andrew Hind
2005-12-19 16:25:33 +00:00
parent 77a19b56f7
commit c1942e3c56
4 changed files with 111 additions and 46 deletions

View File

@@ -0,0 +1,57 @@
/*
* Copyright (C) 2005 Alfresco, Inc.
*
* Licensed under the Mozilla Public License version 1.1
* with a permitted attribution clause. You may obtain a
* copy of the License at
*
* http://www.alfresco.org/legal/license.txt
*
* 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.alfresco.repo.security.authentication;
/**
* This implementation of an AuthenticationComponent can be configured to accept or reject all attempts to login.
*
* This only affects attempts to login using a user name and password.
* Authentication filters etc. could still support authentication but not via user names and passwords.
* For example, where they set the current user using the authentication component.
* Then the current user is set in the security context and asserted to be authenticated.
*
* By default, the implementation rejects all authentication attempts.
*
* @author Andy Hind
*/
public class SimpleAcceptOrRejectAllAuthenticationComponentImpl extends AbstractAuthenticationComponent
{
private boolean accept = false;
public SimpleAcceptOrRejectAllAuthenticationComponentImpl()
{
super();
}
public void setAccept(boolean accept)
{
this.accept = accept;
}
public void authenticate(String userName, char[] password) throws AuthenticationException
{
if(accept)
{
setCurrentUser(userName);
}
else
{
throw new AuthenticationException("Access Denied");
}
}
}