|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.benow.security.service.SecurityServiceImpl
org.benow.web.security.RepoSecurityWebService
public class RepoSecurityWebService
| Nested Class Summary | |
|---|---|
class |
RepoSecurityWebService.InviteEmailInfo
|
class |
RepoSecurityWebService.LoginInfo
|
class |
RepoSecurityWebService.ReminderEmailInfo
|
| Nested classes/interfaces inherited from interface org.benow.web.security.SecurityWebService |
|---|
SecurityWebService.ModuleInfo |
| Nested classes/interfaces inherited from interface org.benow.java.spec.Markup |
|---|
org.benow.java.spec.Markup.ParamName, org.benow.java.spec.Markup.ReturnDescription |
| Field Summary | |
|---|---|
static org.benow.java.config.entry.ClassConfigurationEntry |
CFG_JOIN_HANDLER_CLASS
|
static java.lang.String |
PROP_LOGIN_REDIRECT
RepoSecurityWebService.class.getName()+".loginRedirect" if in system properties will be used as post-login redirect |
static java.lang.String |
PROP_LOGOUT_REDIRECT
RepoSecurityWebService.class.getName()+".logoutRedirect" if in system properties will be used as post-logout redirect |
| Fields inherited from interface org.benow.web.security.SecurityWebService |
|---|
SESSION_POST_LOGIN_URL |
| Constructor Summary | |
|---|---|
RepoSecurityWebService()
|
|
| Method Summary | |
|---|---|
org.benow.security.user.User |
acceptLoginAgreement(boolean acceptLoginAgreement)
Accept the login agreement as redirected to if a login agreement has been specified. |
org.benow.security.user.User |
addInvitedUser(java.lang.String name,
java.lang.String pass,
java.lang.String passVerify,
java.lang.String email,
java.lang.String captcha,
java.lang.String confirm,
java.lang.String redir)
|
void |
addPermissions(org.benow.security.permission.Role role,
java.util.List<org.benow.security.permission.Permission> permissions)
Add permissions to role |
void |
addPermissions(java.lang.String userName,
java.util.List<org.benow.security.permission.Permission> permissions)
Add individually assigned permissions to user |
void |
addRoles(org.benow.security.user.User user,
java.util.List<org.benow.security.permission.Role> roles)
Add roles to user |
org.benow.security.user.User |
addUser(java.lang.String name,
java.lang.String pass,
java.lang.String passVerify,
java.lang.String email,
java.lang.String captcha)
Adds the given user. |
void |
assertInvited(java.lang.String email)
|
void |
changePassword(java.lang.String username,
java.lang.String current,
java.lang.String changed)
|
void |
changePasswordForCurrentUser(java.lang.String current,
java.lang.String changed)
Change the password of the current user. |
void |
confirm(java.lang.String user,
java.lang.String code)
|
org.benow.security.permission.Role |
createRole(java.lang.String name)
|
org.benow.security.user.User |
createUser(java.lang.String name,
java.lang.String password,
java.lang.String email,
java.lang.String description,
boolean requirePassChange)
Creates a new user |
void |
deleteUser(java.lang.Object key)
Deletes the user with the given key. |
protected void |
execJoinHandler(org.benow.repository.security.UserImpl user)
Runs the join handler, as defined in CFG_JOIN_HANDLER_CLASS. |
org.benow.security.user.User |
getCurrentUser()
|
java.util.List<SecurityWebService.ModuleInfo> |
getEditableUserModules(java.lang.String userName)
Gets the user modules for the given user which may be edited. |
java.util.List<org.benow.security.permission.Permission> |
getPermissions()
|
java.util.List<org.benow.security.permission.Permission> |
getPermissionsNotInRole(java.lang.String roleName)
|
java.util.List<org.benow.security.permission.Permission> |
getPermissionsNotInUser(java.lang.String userName)
|
org.benow.security.permission.Role |
getRole(java.lang.String name)
|
java.util.List<org.benow.security.permission.Role> |
getRoles()
|
org.benow.security.user.User |
getUser(java.lang.String name)
|
org.benow.java.spec.argument.ClassSpecification |
getUserModuleSpecification(java.lang.Class<? extends org.benow.security.user.UserModule> moduleClass)
|
java.util.List<org.benow.java.spec.argument.ClassSpecification> |
getUserModuleSpecifications()
|
java.util.List<org.benow.security.user.User> |
getUsers()
|
org.benow.security.user.User |
invite(java.lang.String email,
java.lang.String captcha,
java.lang.String joinRedirect)
Invite a user at the given email address, redirecting them to the given location on join. |
org.benow.security.user.User |
login(java.lang.String username,
java.lang.String password)
Login as the given user. |
org.benow.security.user.User |
login(java.lang.String username,
java.lang.String password,
java.lang.String redirect)
Login as the given user. |
org.benow.security.user.User |
login(java.lang.String username,
java.lang.String password,
java.lang.String redirect,
boolean remember)
Login as the given user. |
void |
logout()
Logout, removing assocation with authenticated user. |
void |
logout(java.lang.String redirect)
Logout, redirecting to given location |
org.benow.security.user.User |
reinvite(java.lang.String email)
Re-invites the user at the given email |
void |
removePermissions(org.benow.security.permission.Role role,
java.util.List<org.benow.security.permission.Permission> permissions)
Remove permissions from role |
void |
removePermissions(java.lang.String userName,
java.util.List<org.benow.security.permission.Permission> permissions)
Remove individually assigned permissions from user |
void |
removeRoles(org.benow.security.user.User user,
java.util.List<org.benow.security.permission.Role> roles)
Remove roles from user |
void |
resendConfirmation(java.lang.String email)
Resend the confirmation email sent during the registration (addUser) process to the user with the given email. |
void |
resendConfirmation(org.benow.security.user.User user)
|
void |
restart()
Restart the application. |
static boolean |
restartSupported()
|
void |
sendReminder(java.lang.String email)
Sends a password reminder email to a registered user |
void |
setDisabled(java.lang.Object userKey,
boolean disabled)
Sets the disabled status for the user with the given key. |
static void |
setLoginRedirect(java.lang.String redirect)
|
static void |
setLogoutRedirect(java.lang.String redirect)
|
void |
setupAP(java.lang.String value)
|
void |
unconfirm(java.lang.String user)
|
static java.lang.String |
unescapeRedir(java.lang.String redir)
Unescapes a uri that had been previously escaped in an email |
void |
update(org.benow.security.permission.Role role)
|
org.benow.security.user.User |
updateUser(java.lang.Object key,
java.lang.String name,
java.lang.String currentPassword,
java.lang.String password,
java.lang.String email,
java.lang.String description,
boolean requirePassChange)
Updates the user with the given key |
| Methods inherited from class org.benow.security.service.SecurityServiceImpl |
|---|
getLoginAgreement, login |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.benow.web.security.SecurityWebService |
|---|
getLoginAgreement |
| Field Detail |
|---|
public static final java.lang.String PROP_LOGOUT_REDIRECT
public static final java.lang.String PROP_LOGIN_REDIRECT
public static final org.benow.java.config.entry.ClassConfigurationEntry CFG_JOIN_HANDLER_CLASS
| Constructor Detail |
|---|
public RepoSecurityWebService()
| Method Detail |
|---|
public static void setLogoutRedirect(java.lang.String redirect)
public static void setLoginRedirect(java.lang.String redirect)
public void addRoles(org.benow.security.user.User user,
java.util.List<org.benow.security.permission.Role> roles)
SecurityWebService
addRoles in interface SecurityWebServicepublic org.benow.security.permission.Role createRole(java.lang.String name)
createRole in interface SecurityWebService
public void unconfirm(java.lang.String user)
throws RedirectException
unconfirm in interface SecurityWebServiceRedirectException
public org.benow.security.permission.Role getRole(java.lang.String name)
throws org.benow.repository.NoSuchObjectException
getRole in interface SecurityWebServiceorg.benow.repository.NoSuchObjectExceptionpublic java.util.List<org.benow.security.permission.Role> getRoles()
getRoles in interface SecurityWebServicepublic java.util.List<org.benow.security.permission.Permission> getPermissions()
getPermissions in interface SecurityWebServicepublic java.util.List<org.benow.security.user.User> getUsers()
getUsers in interface SecurityWebService
public void removeRoles(org.benow.security.user.User user,
java.util.List<org.benow.security.permission.Role> roles)
SecurityWebService
removeRoles in interface SecurityWebService
public org.benow.security.user.User updateUser(java.lang.Object key,
java.lang.String name,
java.lang.String currentPassword,
java.lang.String password,
java.lang.String email,
java.lang.String description,
boolean requirePassChange)
throws RedirectException,
org.benow.repository.NoSuchObjectException
SecurityWebService
updateUser in interface SecurityWebServicekey - key of user to updatename - new name for usercurrentPassword - current password of userpassword - new password of useremail - new emaildescription - new descriptionrequirePassChange - if true, a password change will be required at next login
RedirectException
org.benow.repository.NoSuchObjectException
public org.benow.security.user.User createUser(java.lang.String name,
java.lang.String password,
java.lang.String email,
java.lang.String description,
boolean requirePassChange)
throws RedirectException
SecurityWebService
createUser in interface SecurityWebServicename - name of new user, must be unique or a securityexception is thrownpassword - password for new useremail - email for new userdescription - description for new userrequirePassChange - true if a password change is to be done on next login
RedirectExceptionpublic void update(org.benow.security.permission.Role role)
update in interface SecurityWebService
public void addPermissions(org.benow.security.permission.Role role,
java.util.List<org.benow.security.permission.Permission> permissions)
SecurityWebService
addPermissions in interface SecurityWebService
public void removePermissions(org.benow.security.permission.Role role,
java.util.List<org.benow.security.permission.Permission> permissions)
SecurityWebService
removePermissions in interface SecurityWebService
public org.benow.security.user.User login(java.lang.String username,
java.lang.String password,
java.lang.String redirect)
throws org.benow.security.service.LoginAgreementException,
java.lang.SecurityException,
java.lang.Exception
SecurityWebService
login in interface SecurityWebServiceredirect - location to redirect to on successful login
org.benow.security.service.LoginAgreementException - if there is a login agreement to be accepted.
java.lang.SecurityException - on bad name or password
java.lang.Exception
public org.benow.security.user.User login(java.lang.String username,
java.lang.String password,
java.lang.String redirect,
boolean remember)
throws org.benow.security.service.LoginAgreementException,
java.lang.SecurityException,
java.lang.Exception
SecurityWebService
login in interface SecurityWebServiceredirect - location to redirect to on successful loginremember - if true, remember user information in a cookie, so that repeated logins not required
org.benow.security.service.LoginAgreementException - if there is a login agreement to be accepted.
java.lang.SecurityException - on bad name or password
java.lang.Exception
public org.benow.security.user.User login(java.lang.String username,
java.lang.String password)
throws java.lang.Exception
SecurityWebService
login in interface org.benow.security.service.SecurityServicelogin in interface SecurityWebServicelogin in class org.benow.security.service.SecurityServiceImpljava.lang.Exception
public org.benow.security.user.User acceptLoginAgreement(boolean acceptLoginAgreement)
throws java.lang.SecurityException,
RedirectException
SecurityWebService
acceptLoginAgreement in interface SecurityWebServicejava.lang.SecurityException
RedirectException
public void sendReminder(java.lang.String email)
throws java.lang.SecurityException,
org.benow.repository.ObjectRepositoryError,
javax.mail.MessagingException
SecurityWebService
sendReminder in interface SecurityWebServicejava.lang.SecurityException
org.benow.repository.ObjectRepositoryError
javax.mail.MessagingException
public void changePassword(java.lang.String username,
java.lang.String current,
java.lang.String changed)
throws java.lang.SecurityException,
java.lang.Exception
changePassword in interface SecurityWebServicejava.lang.SecurityException
java.lang.Exception
public void logout(java.lang.String redirect)
throws java.lang.Exception
SecurityWebService
logout in interface SecurityWebServicejava.lang.Exception
public void logout()
throws java.lang.Exception
SecurityWebService
logout in interface org.benow.security.service.SecurityServicelogout in interface SecurityWebServicelogout in class org.benow.security.service.SecurityServiceImpljava.lang.Exception
public org.benow.security.user.User addUser(java.lang.String name,
java.lang.String pass,
java.lang.String passVerify,
java.lang.String email,
java.lang.String captcha)
throws TerseWebException,
RedirectException,
java.net.MalformedURLException,
javax.mail.MessagingException
addUser in interface SecurityWebServiceTerseWebException
RedirectException
java.net.MalformedURLException
javax.mail.MessagingException
protected void execJoinHandler(org.benow.repository.security.UserImpl user)
throws RedirectException
user -
RedirectException
public void resendConfirmation(java.lang.String email)
throws RedirectException
SecurityWebService
resendConfirmation in interface SecurityWebServiceRedirectException
public void resendConfirmation(org.benow.security.user.User user)
throws RedirectException
RedirectException
public void confirm(java.lang.String user,
java.lang.String code)
throws org.benow.repository.NoSuchObjectException,
RedirectException,
java.net.MalformedURLException,
javax.mail.MessagingException
confirm in interface SecurityWebServiceorg.benow.repository.NoSuchObjectException
RedirectException
java.net.MalformedURLException
javax.mail.MessagingExceptionpublic static boolean restartSupported()
public void restart()
throws org.benow.util.NotSupportedError
SecurityWebService
restart in interface SecurityWebServiceorg.benow.util.NotSupportedError - if restart is not supportedpublic org.benow.security.user.User getUser(java.lang.String name)
getUser in interface SecurityWebServicepublic org.benow.security.user.User getCurrentUser()
getCurrentUser in interface SecurityWebService
public void addPermissions(java.lang.String userName,
java.util.List<org.benow.security.permission.Permission> permissions)
SecurityWebService
addPermissions in interface SecurityWebService
public void removePermissions(java.lang.String userName,
java.util.List<org.benow.security.permission.Permission> permissions)
SecurityWebService
removePermissions in interface SecurityWebService
public void setupAP(java.lang.String value)
throws java.lang.Exception
setupAP in interface SecurityWebServicejava.lang.Exception
public org.benow.security.user.User reinvite(java.lang.String email)
throws java.lang.Exception
SecurityWebService
reinvite in interface SecurityWebServiceemail - email address for user to reinvite
org.benow.repository.NoSuchObjectException - if user with given email was never previously invited
AlreadyJoinedException - if user has already accepted a previous invitation
java.lang.Exception
public org.benow.security.user.User invite(java.lang.String email,
java.lang.String captcha,
java.lang.String joinRedirect)
throws java.lang.Exception
SecurityWebService
invite in interface SecurityWebServiceemail - email address of user to invitecaptcha - the user entered value of the associated captchajoinRedirect - uri to redirect the user to after join
NoRemainingInvitationsException
javax.mail.MessagingException
java.net.MalformedURLException
InvalidCaptchaException
java.lang.Exceptionpublic static java.lang.String unescapeRedir(java.lang.String redir)
redir -
public void assertInvited(java.lang.String email)
throws NotInvitedException,
AlreadyJoinedException,
RedirectException
assertInvited in interface SecurityWebServiceNotInvitedException - if user at email was not invited.
AlreadyJoinedException - if the user with the given email has already joined
RedirectException - if there is a current user (not anonymous), the user will be logged out and
current page will be redisplayed
public org.benow.security.user.User addInvitedUser(java.lang.String name,
java.lang.String pass,
java.lang.String passVerify,
java.lang.String email,
java.lang.String captcha,
java.lang.String confirm,
java.lang.String redir)
throws TerseWebException,
RedirectException,
java.net.MalformedURLException,
javax.mail.MessagingException,
InvalidCaptchaException
addInvitedUser in interface SecurityWebServiceTerseWebException
RedirectException
java.net.MalformedURLException
javax.mail.MessagingException
InvalidCaptchaException
public void changePasswordForCurrentUser(java.lang.String current,
java.lang.String changed)
throws java.lang.SecurityException,
java.lang.Exception
SecurityWebService
changePasswordForCurrentUser in interface SecurityWebServicejava.lang.SecurityException
java.lang.Exceptionpublic java.util.List<org.benow.security.permission.Permission> getPermissionsNotInRole(java.lang.String roleName)
getPermissionsNotInRole in interface SecurityWebServicepublic java.util.List<org.benow.security.permission.Permission> getPermissionsNotInUser(java.lang.String userName)
getPermissionsNotInUser in interface SecurityWebService
public void deleteUser(java.lang.Object key)
throws org.benow.repository.NoSuchObjectException
SecurityWebService
deleteUser in interface SecurityWebServiceorg.benow.repository.NoSuchObjectExceptionpublic java.util.List<SecurityWebService.ModuleInfo> getEditableUserModules(java.lang.String userName)
SecurityWebService
getEditableUserModules in interface SecurityWebServicepublic java.util.List<org.benow.java.spec.argument.ClassSpecification> getUserModuleSpecifications()
getUserModuleSpecifications in interface SecurityWebService
public org.benow.java.spec.argument.ClassSpecification getUserModuleSpecification(java.lang.Class<? extends org.benow.security.user.UserModule> moduleClass)
throws org.benow.java.spec.SpecificationException
getUserModuleSpecification in interface SecurityWebServiceorg.benow.java.spec.SpecificationException
public void setDisabled(java.lang.Object userKey,
boolean disabled)
throws org.benow.repository.NoSuchObjectException
SecurityWebService
setDisabled in interface SecurityWebServiceuserKey - key of user to adjust disabled statusdisabled - true to disable, false to not be disabled
org.benow.repository.NoSuchObjectException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||