jetspeedsecurity.java
来自「jetspeed源代码」· Java 代码 · 共 842 行 · 第 1/2 页
JAVA
842 行
/*
* Copyright 2000-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.jetspeed.services;
import java.security.Principal;
import java.util.Iterator;
import java.util.List;
import org.apache.jetspeed.om.SecurityReference;
import org.apache.jetspeed.om.profile.Entry;
import org.apache.jetspeed.om.registry.PortletEntry;
import org.apache.jetspeed.om.registry.RegistryEntry;
import org.apache.jetspeed.om.security.Group;
import org.apache.jetspeed.om.security.JetspeedUser;
import org.apache.jetspeed.om.security.Permission;
import org.apache.jetspeed.om.security.Role;
import org.apache.jetspeed.om.security.UserNamePrincipal;
import org.apache.jetspeed.portal.Portlet;
import org.apache.jetspeed.services.rundata.JetspeedRunData;
import org.apache.jetspeed.services.security.JetspeedGroupManagement;
import org.apache.jetspeed.services.security.JetspeedPermissionManagement;
import org.apache.jetspeed.services.security.JetspeedRoleManagement;
import org.apache.jetspeed.services.security.JetspeedSecurityException;
import org.apache.jetspeed.services.security.JetspeedSecurityService;
import org.apache.jetspeed.services.security.LoginException;
import org.apache.jetspeed.services.security.PortalResource;
import org.apache.turbine.om.security.User;
import org.apache.turbine.services.TurbineServices;
/**
* <P>This is a commodity static accessor class around the
* <code>JetspeedSecurityService</code></P>
*
* @see org.apache.jetspeed.services.security.JetspeedSecurityService
* @author <a href="mailto:david@bluesunrise.com">David Sean Taylor</a>
* @author <a href="mailto:morciuch@apache.org">Mark Orciuch</a>
* @author <a href="mailto:weaver@apache.org">Scott T. Weaver</a>
* @version $Id: JetspeedSecurity.java,v 1.21 2004/03/31 04:49:10 morciuch Exp $
*/
abstract public class JetspeedSecurity /* extends TurbineSecurity */
{
public static final String PERMISSION_VIEW = "view";
public static final String PERMISSION_CUSTOMIZE = "customize";
public static final String PERMISSION_MAXIMIZE = "maximize";
public static final String PERMISSION_MINIMIZE = "minimize";
public static final String PERMISSION_PERSONALIZE = "personalize";
public static final String PERMISSION_DETACH = "detach";
public static final String PERMISSION_CLOSE = "close";
public static final String PERMISSION_INFO = "info";
public static final String PERMISSION_PRINT_FRIENDLY = "print_friendly";
// Jetspeed security only has multiple groups.
// Access Control checks cab be role-based or group-role-based.
// If a user has the specified group-role for the resource, then the user can access that resource
public static final String JETSPEED_GROUP = "Jetspeed";
public static final String JETSPEED_GROUP_ID = "1";
public static final String JETSPEED_ROLE_USER = "user";
public static final String JETSPEED_ROLE_ADMIN = "admin";
/**
* Alphabet consisting of upper and lowercase letters A-Z and
* the digits 0-9 Used to make a random password.
*/
public static final char[] NUMBERS_AND_LETTERS_ALPHABET = {
'A','B','C','D','E','F','G','H',
'I','J','K','L','M','N','O','P',
'Q','R','S','T','U','V','W','X',
'Y','Z','a','b','c','d','e','f',
'g','h','i','j','k','l','m','n',
'o','p','q','r','s','t','u','v',
'w','x','y','z','0','1','2','3',
'4','5','6','7','8','9',
};
/**
* Alphabet consisting of lowercase letters a-z and
* the digits 0-9 Used to make a random password.
*/
public static final char[] LC_NUMBERS_AND_LETTERS_ALPHABET = {
'a','b','c','d','e','f',
'g','h','i','j','k','l','m','n',
'o','p','q','r','s','t','u','v',
'w','x','y','z','0','1','2','3',
'4','5','6','7','8','9',
};
/**
* Commodity method for getting a reference to the service
* singleton
*/
public static JetspeedSecurityService getService()
{
return (JetspeedSecurityService)TurbineServices
.getInstance()
.getService(JetspeedSecurityService.SERVICE_NAME);
}
//////////////////////////////////////////////////////////////////////////
// PortalAuthentication
/////////////////////////////////////////////////////////////////////////
/**
* @see PortalAuthentication#login
*/
public static JetspeedUser login(String username, String password)
throws LoginException
{
return JetspeedAuthentication.login(username, password);
}
/**
* @see PortalAuthentication#getAnonymousUser
*/
public static JetspeedUser getAnonymousUser()
throws LoginException
{
return JetspeedAuthentication.getAnonymousUser();
}
/**
* @see PortalAuthentication#logout
*/
public static void logout()
throws LoginException
{
JetspeedAuthentication.logout();
}
//////////////////////////////////////////////////////////////////////////
// PortalAuthorization
/////////////////////////////////////////////////////////////////////////
/**
* @see JetspeedPortalAccessController#checkPermission
*/
public static boolean checkPermission(JetspeedUser user, Entry entry, String action)
{
return JetspeedPortalAccessController.checkPermission(user, entry, action);
}
/**
* @see JetspeedPortalAccessController#checkPermission
*/
public static boolean checkPermission(JetspeedUser user, Portlet portlet, String action)
{
return JetspeedPortalAccessController.checkPermission(user, portlet, action);
}
/**
* @see JetspeedPortalAccessController#checkPermission
*/
public static boolean checkPermission(JetspeedUser user, PortalResource resource, String action)
{
return JetspeedPortalAccessController.checkPermission(user, resource, action);
}
//////////////////////////////////////////////////////////////////////////
// UserManagement
/////////////////////////////////////////////////////////////////////////
/**
* @see UserManagement#getUser
*/
public static JetspeedUser getUser(Principal principal)
throws JetspeedSecurityException
{
return JetspeedUserManagement.getUser(principal);
}
/**
* @see UserManagement#getUsers
*/
public static Iterator getUsers()
throws JetspeedSecurityException
{
return JetspeedUserManagement.getUsers();
}
/**
* @see UserManagement#saveUser
*/
public static void saveUser( JetspeedUser user )
throws JetspeedSecurityException
{
JetspeedUserManagement.saveUser(user);
}
/**
* @see UserManagement#addUser
*/
public static void addUser( JetspeedUser user )
throws JetspeedSecurityException
{
JetspeedUserManagement.addUser(user);
}
/**
* @see UserManagement#getUsers(String)
*/
public static Iterator getUsers(String filter)
throws JetspeedSecurityException
{
return JetspeedUserManagement.getUsers(filter);
}
/**
* @see UserManagement#removeUser
*/
public static void removeUser(Principal principal)
throws JetspeedSecurityException
{
JetspeedUserManagement.removeUser(principal);
}
/**
* @see UserManagement#getUser
*/
public static JetspeedUser getUser(String username)
throws JetspeedSecurityException
{
return JetspeedUserManagement.getUser(new UserNamePrincipal(username));
}
/**
* @see UserManagement#removeUser
*/
public static void removeUser(String username)
throws JetspeedSecurityException
{
JetspeedUserManagement.removeUser(new UserNamePrincipal(username));
}
//////////////////////////////////////////////////////////////////////////
// CredentialsManagement
/////////////////////////////////////////////////////////////////////////
/**
* @see CredentialsManagement#changePassword
*/
public static void changePassword( JetspeedUser user,
String oldPassword,
String newPassword )
throws JetspeedSecurityException
{
JetspeedUserManagement.changePassword(user, oldPassword, newPassword);
}
/**
* @see CredentialsManagement#forcePassword
*/
public static void forcePassword( JetspeedUser user, String password )
throws JetspeedSecurityException
{
JetspeedUserManagement.forcePassword(user, password);
}
/**
* @see CredentialsManagement#encryptPassword
*/
public static String encryptPassword( String password )
throws JetspeedSecurityException
{
return JetspeedUserManagement.encryptPassword(password);
}
//////////////////////////////////////////////////////////////////////////
// Role Management
/////////////////////////////////////////////////////////////////////////
/**
* @see RoleManagement#getRoles(String)
*/
public static Iterator getRoles(String username)
throws JetspeedSecurityException
{
return JetspeedRoleManagement.getRoles(username);
}
/**
* @see RoleManagement#getRoles
*/
public static Iterator getRoles()
throws JetspeedSecurityException
{
return JetspeedRoleManagement.getRoles();
}
/**
* @see RoleManagement#addRole
*/
public static void addRole(Role role)
throws JetspeedSecurityException
{
JetspeedRoleManagement.addRole(role);
}
/**
* @see RoleManagement#saveRole
*/
public static void saveRole(Role role)
throws JetspeedSecurityException
{
JetspeedRoleManagement.saveRole(role);
}
/**
* @see RoleManagement#removeRole
*/
public static void removeRole(String rolename)
throws JetspeedSecurityException
{
JetspeedRoleManagement.removeRole(rolename);
}
/**
* @see RoleManagement#grantRole
*/
public static void grantRole(String username, String rolename)
throws JetspeedSecurityException
{
JetspeedRoleManagement.grantRole(username,rolename);
}
/**
* @see RoleManagement#grantRole
*/
public static void grantRole(String username, String rolename, String groupname)
throws JetspeedSecurityException
{
JetspeedRoleManagement.grantRole(username,rolename,groupname);
}
/**
* @see RoleManagement#revokeRole
*/
public static void revokeRole(String username, String rolename)
throws JetspeedSecurityException
{
JetspeedRoleManagement.revokeRole(username,rolename);
}
/**
* @see RoleManagement#revokeRole()
*/
public static void revokeRole(String username, String rolename, String groupname)
throws JetspeedSecurityException
{
JetspeedRoleManagement.revokeRole(username, rolename, groupname);
}
/**
* @see RoleManagement#hasRole
*/
public static boolean hasRole(String username, String rolename)
throws JetspeedSecurityException
{
return JetspeedRoleManagement.hasRole(username,rolename);
}
public static boolean hasRole(String username, String rolename, String groupname)
throws JetspeedSecurityException
{
return JetspeedRoleManagement.hasRole(username, rolename, groupname);
}
/**
* @see RoleManagement#getRole
*/
public static Role getRole(String rolename)
throws JetspeedSecurityException
{
return JetspeedRoleManagement.getRole(rolename);
}
//////////////////////////////////////////////////////////////////////////
// Group Management
/////////////////////////////////////////////////////////////////////////
/**
* @see GroupManagement#getGroups(String)
*/
public static Iterator getGroups(String username)
throws JetspeedSecurityException
{
return JetspeedGroupManagement.getGroups(username);
}
/**
* @see GroupManagement#getGroups
*/
public static Iterator getGroups()
throws JetspeedSecurityException
{
return JetspeedGroupManagement.getGroups();
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?