javax.security.auth.kerberos

Class ServicePermission

Implemented Interfaces:
Guard, Serializable

public final class ServicePermission
extends Permission

This represents permission to access to a Kerberos service principal. See the Kerberos authentication RFC for more information: RFC 1510.
Since:
1.4
See Also:
Serialized Form

Constructor Summary

ServicePermission(String name, String action)
Create a new service permission with the indicated name and actions.

Method Summary

boolean
equals(Object obj)
Check to see if this object equals obj.
String
getActions()
Return a string representing the actions.
int
hashCode()
This method returns a hash code for this Permission.
boolean
implies(Permission perm)
This method tests whether this Permission implies that the specified Permission is also granted.
PermissionCollection
newPermissionCollection()
This method returns an empty PermissionCollection object that can store permissions of this type, or null if no such collection is defined.

Methods inherited from class java.security.Permission

checkGuard, equals, getActions, getName, hashCode, implies, newPermissionCollection, toString

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

ServicePermission

public ServicePermission(String name,
                         String action)
Create a new service permission with the indicated name and actions. The name is the name of the kerberos principal for the service. The actions are a comma-separated list of strings. The recognized actions are "initiate" and "accept". The "initiate" action means that the holder of the permission can access the service. The "accept" action means that the holder of the permission can operate as this service.
Parameters:
name - the prinicpal's name
action - the allowed actions

Method Details

equals

public boolean equals(Object obj)
Check to see if this object equals obj. Use implies, rather than equals, when making access control decisions.
Overrides:
equals in interface Permission
Parameters:
obj - the object to compare to

getActions

public String getActions()
Return a string representing the actions.
Overrides:
getActions in interface Permission

hashCode

public int hashCode()
This method returns a hash code for this Permission. It must satisfy the contract of Object.hashCode: it must be the same for all objects that equals considers to be the same.
Overrides:
hashCode in interface Permission
Returns:
a hash value

implies

public boolean implies(Permission perm)
This method tests whether this Permission implies that the specified Permission is also granted.
Overrides:
implies in interface Permission
Parameters:
perm - the Permission to test against
Returns:
true if perm is implied by this

newPermissionCollection

public PermissionCollection newPermissionCollection()
This method returns an empty PermissionCollection object that can store permissions of this type, or null if no such collection is defined. Subclasses must override this to provide an appropriate collection when one is needed to accurately calculate implies.
Overrides:
newPermissionCollection in interface Permission
Returns:
a new PermissionCollection

ServicePermission.java -- kerberos service permission Copyright (C) 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.