public interface AccessAdapter
Unless you are implementing a new implementation of this interface,
you should not need to directly use these methods as they are all
wrapped by methods in the Group class.
| Modifier and Type | Method and Description |
|---|---|
Set<Group> |
getGroupsWhereSubjectDoesHavePrivilege(GrouperSession grouperSession,
String stemId,
Stem.Scope scope,
Subject subject,
Privilege privilege,
boolean considerAllSubject,
String sqlLikeString)
find the groups which do not have a certain privilege
|
Set<Group> |
getGroupsWhereSubjectDoesntHavePrivilege(GrouperSession grouperSession,
String stemId,
Stem.Scope scope,
Subject subject,
Privilege privilege,
boolean considerAllSubject,
String sqlLikeString)
find the groups which do not have a certain privilege
|
Set<Group> |
getGroupsWhereSubjectHasPriv(GrouperSession s,
Subject subj,
Privilege priv)
Get all groups where this subject has this privilege.
|
Set<AccessPrivilege> |
getPrivs(GrouperSession s,
Group g,
Subject subj)
Get all privileges held by this subject on this group.
|
Set<Stem> |
getStemsWhereGroupThatSubjectHasPrivilege(GrouperSession grouperSession,
Subject subject,
Privilege privilege)
get stems where a group exists where the subject has privilege
|
Set<Subject> |
getSubjectsWithPriv(GrouperSession s,
Group g,
Privilege priv)
Get all subjects with this privilege on this group.
|
void |
grantPriv(GrouperSession s,
Group g,
Subject subj,
Privilege priv,
String uuid)
Grant the privilege to the subject on this group.
|
boolean |
hasPriv(GrouperSession s,
Group g,
Subject subj,
Privilege priv)
Check whether the subject has this privilege on this group.
|
boolean |
hqlFilterGroupsNotWithPrivWhereClause(GrouperSession grouperSession,
Subject subject,
HqlQuery hqlQuery,
StringBuilder hql,
String groupColumn,
Privilege privilege,
boolean considerAllSubject)
for a group query, check to make sure the subject cant see the records (if filtering HQL, you can do
the postHqlFilterGroups instead if you like).
|
boolean |
hqlFilterGroupsWhereClause(GrouperSession grouperSession,
Subject subject,
HqlQuery hqlQuery,
StringBuilder hql,
String groupColumn,
Set<Privilege> privInSet)
for a group query, check to make sure the subject can see the records (if filtering HQL, you can do
the postHqlFilterGroups instead if you like).
|
boolean |
hqlFilterGroupsWithPrivWhereClause(GrouperSession grouperSession,
Subject subject,
HqlQuery hqlQuery,
StringBuilder hql,
String groupColumn,
Privilege privilege,
boolean considerAllSubject)
for a group query, see if the groups have certain privs
|
Set<Group> |
postHqlFilterGroups(GrouperSession grouperSession,
Set<Group> groups,
Subject subject,
Set<Privilege> privInSet)
after HQL is run, filter groups.
|
Set<Membership> |
postHqlFilterMemberships(GrouperSession grouperSession,
Subject subject,
Set<Membership> memberships)
filter memberships for things the subject can see
|
Set<Stem> |
postHqlFilterStemsWithGroups(GrouperSession grouperSession,
Set<Stem> stems,
Subject subject,
Set<Privilege> inPrivSet)
after HQL is run, filter stems with groups.
|
void |
privilegeCopy(GrouperSession s,
Group g1,
Group g2,
Privilege priv)
Copies privileges for subjects that have the specified privilege on g1 to g2.
|
void |
privilegeCopy(GrouperSession s,
Subject subj1,
Subject subj2,
Privilege priv)
Copies privileges of type priv on any subject for the given Subject subj1 to the given Subject subj2.
|
Set<PrivilegeSubjectContainer> |
retrievePrivileges(GrouperSession grouperSession,
Group group,
Set<Privilege> privileges,
MembershipType membershipType,
QueryPaging queryPaging,
Set<Member> additionalMembers)
get a list of privilege subjects, there are no results with the same subject/privilege combination
|
void |
revokeAllPrivilegesForSubject(GrouperSession grouperSession,
Subject subject)
Revoke all access privileges that this subject has.
|
void |
revokePriv(GrouperSession s,
Group g,
Privilege priv)
Revoke this privilege from everyone on this group.
|
void |
revokePriv(GrouperSession s,
Group g,
Subject subj,
Privilege priv)
Revoke the privilege from the subject on this group.
|
Set<Subject> getSubjectsWithPriv(GrouperSession s, Group g, Privilege priv) throws SchemaException
Set admins = ap.getSubjectsWithPriv(s, g, AccessPrivilege.ADMIN);
s - Get privileges within this session context.g - Get privileges on this group.priv - Get this privilege.Subject objects.SchemaExceptionSet<Group> getGroupsWhereSubjectHasPriv(GrouperSession s, Subject subj, Privilege priv) throws SchemaException
try {
Set isAdmin = ap.getGroupsWhereSubjectHasPriv(
s, subj, AccessPrivilege.ADMIN
);
}
catch (SchemaException eS) {
// Invalid priv
}
s - Get privileges within this session context.subj - Get privileges for this subject.priv - Get this privilege.Group objects.SchemaExceptionSet<Group> getGroupsWhereSubjectDoesntHavePrivilege(GrouperSession grouperSession, String stemId, Stem.Scope scope, Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString)
grouperSession - stemId - scope - subject - privilege - considerAllSubject - sqlLikeString - Set<Stem> getStemsWhereGroupThatSubjectHasPrivilege(GrouperSession grouperSession, Subject subject, Privilege privilege)
grouperSession - subject - privilege - Set<AccessPrivilege> getPrivs(GrouperSession s, Group g, Subject subj)
Set privs = ap.getPrivs(s, g, subj);
s - Get privileges within this session context.g - Get privileges on this group.subj - Get privileges for this member.void grantPriv(GrouperSession s, Group g, Subject subj, Privilege priv, String uuid) throws GrantPrivilegeException, InsufficientPrivilegeException, SchemaException
try {
ap.grantPriv(s, g, subj, AccessPrivilege.ADMIN);
}
catch (GrantPrivilegeException e0) {
// Unable to grant the privilege
}
catch (InsufficientPrivilegeException e1) {
// Not privileged to grant the privilege
}
catch (SchemaException e2) {
// Invalid privilege
}
s - Grant privilege in this session context.g - Grant privilege on this group.subj - Grant privilege to this subject.priv - Grant this privilege.uuid - is uuid or null if generatedGrantPrivilegeExceptionInsufficientPrivilegeExceptionSchemaExceptionboolean hasPriv(GrouperSession s, Group g, Subject subj, Privilege priv) throws SchemaException
try {
ap.hasPriv(s, g, subject, AccessPrivilege.ADMIN);
}
catch (SchemaException e) {
// Invalid privilege
}
s - Check privilege in this session context.g - Check privilege on this group.subj - Check privilege for this subject.priv - Check this privilege.SchemaExceptionvoid revokePriv(GrouperSession s, Group g, Privilege priv) throws InsufficientPrivilegeException, RevokePrivilegeException, SchemaException
try {
ap.revokePriv(s, g, AccessPrivilege.ADMIN);
}
catch (InsufficientPrivilegeException eIP) {
// Not privileged to revoke the privilege
}
catch (RevokePrivilegeException eRP) {
// Unable to revoke the privilege
}
s - Revoke privilege in this session context.g - Revoke privilege on this group.priv - Revoke this privilege.InsufficientPrivilegeExceptionRevokePrivilegeExceptionSchemaExceptionvoid revokePriv(GrouperSession s, Group g, Subject subj, Privilege priv) throws InsufficientPrivilegeException, RevokePrivilegeException, SchemaException
try {
ap.revokePriv(s, g, subj, AccessPrivilege.ADMIN);
}
catch (InsufficientPrivilegeException eIP) {
// Not privileged to revoke the privilege
}
catch (RevokePrivilegeException eRP) {
// Unable to revoke the privilege
}
s - Revoke privilege in this session context.g - Revoke privilege on this group.subj - Revoke privilege from this subject.priv - Revoke this privilege.InsufficientPrivilegeExceptionRevokePrivilegeExceptionSchemaExceptionvoid privilegeCopy(GrouperSession s, Group g1, Group g2, Privilege priv) throws InsufficientPrivilegeException, GrantPrivilegeException, SchemaException
s - g1 - g2 - priv - InsufficientPrivilegeExceptionGrantPrivilegeExceptionSchemaExceptionvoid privilegeCopy(GrouperSession s, Subject subj1, Subject subj2, Privilege priv) throws InsufficientPrivilegeException, GrantPrivilegeException, SchemaException
s - subj1 - subj2 - priv - InsufficientPrivilegeExceptionGrantPrivilegeExceptionSchemaExceptionSet<Group> postHqlFilterGroups(GrouperSession grouperSession, Set<Group> groups, Subject subject, Set<Privilege> privInSet)
grouperSession - groups - subject - which needs view access to the groupsprivInSet - find a privilege which is in this set
(e.g. for view, send all access privs). There are pre-canned sets in AccessAdapterSet<Stem> postHqlFilterStemsWithGroups(GrouperSession grouperSession, Set<Stem> stems, Subject subject, Set<Privilege> inPrivSet)
grouperSession - stems - subject - inPrivSet - boolean hqlFilterGroupsWhereClause(GrouperSession grouperSession, Subject subject, HqlQuery hqlQuery, StringBuilder hql, String groupColumn, Set<Privilege> privInSet)
grouperSession - subject - which needs view access to the groupshql - is the select and part part (hql prefix)hqlQuery - groupColumn - is the name of the group column to join toprivInSet - find a privilege which is in this set
(e.g. for view, send all access privs). There are pre-canned sets in AccessPrivilegeboolean hqlFilterGroupsNotWithPrivWhereClause(GrouperSession grouperSession, Subject subject, HqlQuery hqlQuery, StringBuilder hql, String groupColumn, Privilege privilege, boolean considerAllSubject)
grouperSession - subject - which needs view access to the groupshql - is the select and part part (hql prefix)hqlQuery - groupColumn - is the name of the group column to join toprivilege - find a privilege which is in this set
(e.g. for view, send view).considerAllSubject - if true, then consider GrouperAll when seeing if doesnt have privilege, else do considerSet<Membership> postHqlFilterMemberships(GrouperSession grouperSession, Subject subject, Set<Membership> memberships)
grouperSession - memberships - subject - void revokeAllPrivilegesForSubject(GrouperSession grouperSession, Subject subject)
grouperSession - subject - Set<PrivilegeSubjectContainer> retrievePrivileges(GrouperSession grouperSession, Group group, Set<Privilege> privileges, MembershipType membershipType, QueryPaging queryPaging, Set<Member> additionalMembers)
grouperSession - grouper sessiongroup - to search onprivileges - if blank, get allmembershipType - if immediate, effective, or blank for allqueryPaging - if a certain page should be returned based on subjectadditionalMembers - additional members to query that the user is finding or addingSet<Group> getGroupsWhereSubjectDoesHavePrivilege(GrouperSession grouperSession, String stemId, Stem.Scope scope, Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString)
grouperSession - stemId - scope - subject - privilege - considerAllSubject - sqlLikeString - boolean hqlFilterGroupsWithPrivWhereClause(GrouperSession grouperSession, Subject subject, HqlQuery hqlQuery, StringBuilder hql, String groupColumn, Privilege privilege, boolean considerAllSubject)
grouperSession - subject - which needs view access to the groupshql - is the select and part part (hql prefix)hqlQuery - groupColumn - is the name of the group column to join toprivilege - find a privilege which is in this set
(e.g. for view, send view).considerAllSubject - if true, then consider GrouperAll when seeing if doesnt have privilege, else do considerCopyright © 2016 Internet2. All rights reserved.