From a502d96a860456ec5e8c96761db70f7cabb74751 Mon Sep 17 00:00:00 2001 From: Paul Martin <paul@paulsputer.com> Date: Sat, 30 Apr 2016 04:19:14 -0400 Subject: [PATCH] Merge pull request #1073 from gitblit/1062-DocEditorUpdates --- src/main/java/com/gitblit/manager/IAuthenticationManager.java | 77 +++++++++++++++++++++++++++++++++++++- 1 files changed, 75 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/gitblit/manager/IAuthenticationManager.java b/src/main/java/com/gitblit/manager/IAuthenticationManager.java index 3007a30..5406a79 100644 --- a/src/main/java/com/gitblit/manager/IAuthenticationManager.java +++ b/src/main/java/com/gitblit/manager/IAuthenticationManager.java @@ -18,8 +18,10 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.gitblit.Constants.Role; import com.gitblit.models.TeamModel; import com.gitblit.models.UserModel; +import com.gitblit.transport.ssh.SshKey; public interface IAuthenticationManager extends IManager { @@ -30,8 +32,19 @@ * * @param httpRequest * @return a user object or null + * @since 1.4.0 */ UserModel authenticate(HttpServletRequest httpRequest); + + /** + * Authenticate a user based on a ssh public key. + * + * @param username + * @param key + * @return a user object or null +* * @since 1.5.0 + */ + UserModel authenticate(String username, SshKey key); /** * Authenticate a user based on HTTP request parameters. @@ -42,6 +55,7 @@ * @param httpRequest * @param requiresCertificate * @return a user object or null + * @since 1.4.0 */ UserModel authenticate(HttpServletRequest httpRequest, boolean requiresCertificate); @@ -51,15 +65,28 @@ * @see IUserService.authenticate(String, char[]) * @param username * @param password + * @param remoteIP * @return a user object or null + * @since 1.4.0 */ - UserModel authenticate(String username, char[] password); + UserModel authenticate(String username, char[] password, String remoteIP); + + /** + * Return the UserModel for already authenticated user. + * + * @see IUserService.authenticate(String, char[]) + * @param username + * @return a user object or null + * @since 1.7.0 + */ + UserModel authenticate(String username); /** * Returns the Gitlbit cookie in the request. * * @param request * @return the Gitblit cookie for the request or null if not found + * @since 1.4.0 */ String getCookie(HttpServletRequest request); @@ -68,21 +95,45 @@ * * @param response * @param user + * @since 1.4.0 */ + @Deprecated void setCookie(HttpServletResponse response, UserModel user); + + /** + * Sets a cookie for the specified user. + * + * @param request + * @param response + * @param user + * @since 1.6.1 + */ + void setCookie(HttpServletRequest request, HttpServletResponse response, UserModel user); /** * Logout a user. * * @param user + * @since 1.4.0 */ + @Deprecated void logout(HttpServletResponse response, UserModel user); + + /** + * Logout a user. + * + * @param request + * @param response + * @param user + * @since 1.6.1 + */ + void logout(HttpServletRequest request, HttpServletResponse response, UserModel user); /** * Does the user service support changes to credentials? * * @return true or false - * @since 1.0.0 + * @since 1.4.0 */ boolean supportsCredentialChanges(UserModel user); @@ -91,6 +142,7 @@ * * @param user * @return true if the user service supports display name changes + * @since 1.4.0 */ boolean supportsDisplayNameChanges(UserModel user); @@ -99,6 +151,7 @@ * * @param user * @return true if the user service supports email address changes + * @since 1.4.0 */ boolean supportsEmailAddressChanges(UserModel user); @@ -107,6 +160,7 @@ * * @param user * @return true if the user service supports team membership changes + * @since 1.4.0 */ boolean supportsTeamMembershipChanges(UserModel user); @@ -115,7 +169,26 @@ * * @param user * @return true if the team memberships can be changed + * @since 1.4.0 */ boolean supportsTeamMembershipChanges(TeamModel team); + /** + * Returns true if the specified role can be changed. + * + * @param user + * @return true if the specified role can be changed + * @since 1.6.1 + */ + boolean supportsRoleChanges(UserModel user, Role role); + + /** + * Returns true if the specified role can be changed. + * + * @param team + * @return true if the specified role can be changed + * @since 1.6.1 + */ + boolean supportsRoleChanges(TeamModel team, Role role); + } \ No newline at end of file -- Gitblit v1.9.1