Package com.sun.identity.entitlement
Class ApplicationPrivilegeManager
- java.lang.Object
-
- com.sun.identity.entitlement.ApplicationPrivilegeManager
-
- Direct Known Subclasses:
OpenSSOApplicationPrivilegeManager
public abstract class ApplicationPrivilegeManager extends Object
This class manages the delegation of application privileges.
-
-
Field Summary
Fields Modifier and Type Field Description static StringACTION_DELEGATEstatic StringACTION_MODIFYstatic StringACTION_READ
-
Constructor Summary
Constructors Modifier Constructor Description protectedApplicationPrivilegeManager()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract voidaddPrivilege(ApplicationPrivilege appPrivilege)Adds a delegation privilege.abstract booleancanCreateApplication(String realm)Returnstrueif subject can create application.abstract Set<String>getApplications(ApplicationPrivilege.Action action)Returns application names for a given action.static ApplicationPrivilegeManagergetInstance(String realm, Subject caller)Returns an instance of application privilege manager.abstract ApplicationPrivilegegetPrivilege(String name)Returns the application privilege object.abstract Set<String>getResources(String applicationName, ApplicationPrivilege.Action action)Returns a set of resources for an application and an action.abstract booleanhasPrivilege(Application app, ApplicationPrivilege.Action action)abstract booleanhasPrivilege(Privilege p, ApplicationPrivilege.Action action)Returnstrueif the subject has permission to a privilege of a given action.abstract booleanhasPrivilege(ReferralPrivilege p, ApplicationPrivilege.Action action)Returnstrueif the subject has permission to a referral privilege of a given action.abstract voidremovePrivilege(String name)Removes a privilege.abstract voidreplacePrivilege(ApplicationPrivilege appPrivilege)Replaces (or modifies) an existing privilege.abstract Set<String>search(Set<SearchFilter> filters)Returns a set of privilege names that the administrator can delegate.
-
-
-
Method Detail
-
addPrivilege
public abstract void addPrivilege(ApplicationPrivilege appPrivilege) throws EntitlementException
Adds a delegation privilege.- Parameters:
appPrivilege- Application Privilege to be added- Throws:
EntitlementException- if privilege cannot be added.
-
replacePrivilege
public abstract void replacePrivilege(ApplicationPrivilege appPrivilege) throws EntitlementException
Replaces (or modifies) an existing privilege.- Parameters:
appPrivilege- New privilege.- Throws:
EntitlementException- if privilege cannot be replaced.
-
removePrivilege
public abstract void removePrivilege(String name) throws EntitlementException
Removes a privilege.- Parameters:
name- Name of privilege to remove- Throws:
EntitlementException- if privilege cannot be removed.
-
search
public abstract Set<String> search(Set<SearchFilter> filters)
Returns a set of privilege names that the administrator can delegate.- Parameters:
filters- Set of search filters.- Returns:
- Set of privilege names that the administrator can delegate.
-
getPrivilege
public abstract ApplicationPrivilege getPrivilege(String name) throws EntitlementException
Returns the application privilege object.- Parameters:
name- Name of application privilege.- Returns:
- the application privilege object.
- Throws:
EntitlementException- if privilege cannot be returned.
-
hasPrivilege
public abstract boolean hasPrivilege(Privilege p, ApplicationPrivilege.Action action) throws EntitlementException
Returnstrueif the subject has permission to a privilege of a given action.- Parameters:
p- Privilege.action- Privilege action.- Returns:
trueif the subject has permission to a privilege of a given action.- Throws:
EntitlementException
-
hasPrivilege
public abstract boolean hasPrivilege(Application app, ApplicationPrivilege.Action action) throws EntitlementException
- Throws:
EntitlementException
-
hasPrivilege
public abstract boolean hasPrivilege(ReferralPrivilege p, ApplicationPrivilege.Action action) throws EntitlementException
Returnstrueif the subject has permission to a referral privilege of a given action.- Parameters:
p- Referral Privilege.action- Privilege action.- Returns:
trueif the subject has permission to a referral privilege of a given action.- Throws:
EntitlementException
-
getResources
public abstract Set<String> getResources(String applicationName, ApplicationPrivilege.Action action)
Returns a set of resources for an application and an action.- Parameters:
applicationName- Application name.action- Privilege action.- Returns:
- set of resources for an application and an action.
-
getApplications
public abstract Set<String> getApplications(ApplicationPrivilege.Action action)
Returns application names for a given action.- Parameters:
action- Privilege action.- Returns:
- application names for a given action.
-
canCreateApplication
public abstract boolean canCreateApplication(String realm)
Returnstrueif subject can create application.- Parameters:
realm- Realm where application is to be created.
-
getInstance
public static ApplicationPrivilegeManager getInstance(String realm, Subject caller)
Returns an instance of application privilege manager.- Parameters:
realm- Realm name.caller- Administrator subject.- Returns:
- an instance of application privilege manager.
-
-