From 8d96b960e472433d2b4a5b71df7000bf1fbde648 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 10 Apr 2014 18:58:10 -0400
Subject: [PATCH] Track the SSH public key used for a session and add a `keys which` command
---
src/main/java/com/gitblit/GitBlit.java | 34 ++++++++++++++++++++++++++++++----
1 files changed, 30 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/gitblit/GitBlit.java b/src/main/java/com/gitblit/GitBlit.java
index 147b2e1..0ffff31 100644
--- a/src/main/java/com/gitblit/GitBlit.java
+++ b/src/main/java/com/gitblit/GitBlit.java
@@ -66,24 +66,24 @@
public GitBlit(
IRuntimeManager runtimeManager,
+ IPluginManager pluginManager,
INotificationManager notificationManager,
IUserManager userManager,
IAuthenticationManager authenticationManager,
IPublicKeyManager publicKeyManager,
IRepositoryManager repositoryManager,
IProjectManager projectManager,
- IFederationManager federationManager,
- IPluginManager pluginManager) {
+ IFederationManager federationManager) {
super(runtimeManager,
+ pluginManager,
notificationManager,
userManager,
authenticationManager,
publicKeyManager,
repositoryManager,
projectManager,
- federationManager,
- pluginManager);
+ federationManager);
this.injector = ObjectGraph.create(getModules());
@@ -105,6 +105,11 @@
servicesManager.stop();
ticketService.stop();
return this;
+ }
+
+ @Override
+ public boolean isServingRepositories() {
+ return servicesManager.isServingRepositories();
}
protected Object [] getModules() {
@@ -191,6 +196,27 @@
}
/**
+ * Delete the user and all associated public ssh keys.
+ */
+ @Override
+ public boolean deleteUser(String username) {
+ boolean success = userManager.deleteUser(username);
+ if (success) {
+ getPublicKeyManager().removeAllKeys(username);
+ }
+ return success;
+ }
+
+ @Override
+ public boolean deleteUserModel(UserModel model) {
+ boolean success = userManager.deleteUserModel(model);
+ if (success) {
+ getPublicKeyManager().removeAllKeys(model.username);
+ }
+ return success;
+ }
+
+ /**
* Delete the repository and all associated tickets.
*/
@Override
--
Gitblit v1.9.1