Skip to content

Commit 6e629ca

Browse files
committed
SSL: remove ssl certificates when clean up account
1 parent cb5be1d commit 6e629ca

File tree

5 files changed

+18
-0
lines changed

5 files changed

+18
-0
lines changed

engine/schema/src/main/java/com/cloud/network/dao/SslCertDao.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,6 @@
2222

2323
public interface SslCertDao extends GenericDao<SslCertVO, Long> {
2424
List<SslCertVO> listByAccountId(Long id);
25+
26+
int removeByAccountId(long accountId);
2527
}

engine/schema/src/main/java/com/cloud/network/dao/SslCertDaoImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,10 @@ public List<SslCertVO> listByAccountId(Long accountId) {
4040
return listBy(sc);
4141
}
4242

43+
@Override
44+
public int removeByAccountId(long accountId) {
45+
SearchCriteria<SslCertVO> sc = listByAccountId.create();
46+
sc.setParameters("accountId", accountId);
47+
return remove(sc);
48+
}
4349
}

server/src/main/java/com/cloud/user/AccountManagerImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@
136136
import com.cloud.network.dao.NetworkVO;
137137
import com.cloud.network.dao.RemoteAccessVpnDao;
138138
import com.cloud.network.dao.RemoteAccessVpnVO;
139+
import com.cloud.network.dao.SslCertDao;
139140
import com.cloud.network.dao.VpnUserDao;
140141
import com.cloud.network.router.VirtualRouter;
141142
import com.cloud.network.security.SecurityGroupManager;
@@ -308,6 +309,8 @@ public class AccountManagerImpl extends ManagerBase implements AccountManager, M
308309
private UserDataDao userDataDao;
309310
@Inject
310311
private NetworkPermissionDao networkPermissionDao;
312+
@Inject
313+
private SslCertDao sslCertDao;
311314

312315
private List<QuerySelector> _querySelectors;
313316

@@ -1202,6 +1205,9 @@ public int compare(NetworkVO network1, NetworkVO network2) {
12021205
// Delete registered UserData
12031206
userDataDao.removeByAccountId(accountId);
12041207

1208+
// Delete SSL certificates
1209+
sslCertDao.removeByAccountId(accountId);
1210+
12051211
// Delete Webhooks
12061212
deleteWebhooksForAccount(accountId);
12071213

server/src/test/java/com/cloud/user/AccountManagerImplTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,7 @@ public void deleteUserAccount() {
201201
Mockito.when(_sshKeyPairDao.listKeyPairs(Mockito.anyLong(), Mockito.anyLong())).thenReturn(sshkeyList);
202202
Mockito.when(_sshKeyPairDao.remove(Mockito.anyLong())).thenReturn(true);
203203
Mockito.when(userDataDao.removeByAccountId(Mockito.anyLong())).thenReturn(222);
204+
Mockito.when(sslCertDao.removeByAccountId(Mockito.anyLong())).thenReturn(333);
204205
Mockito.doNothing().when(accountManagerImpl).deleteWebhooksForAccount(Mockito.anyLong());
205206
Mockito.doNothing().when(accountManagerImpl).verifyCallerPrivilegeForUserOrAccountOperations((Account) any());
206207

server/src/test/java/com/cloud/user/AccountManagetImplTestBase.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import com.cloud.network.dao.IPAddressDao;
3030
import com.cloud.network.dao.NetworkDao;
3131
import com.cloud.network.dao.RemoteAccessVpnDao;
32+
import com.cloud.network.dao.SslCertDao;
3233
import com.cloud.network.dao.VpnUserDao;
3334
import com.cloud.network.security.SecurityGroupManager;
3435
import com.cloud.network.security.dao.SecurityGroupDao;
@@ -198,6 +199,8 @@ public class AccountManagetImplTestBase {
198199
@Mock
199200
UserDataDao userDataDao;
200201
@Mock
202+
SslCertDao sslCertDao;
203+
@Mock
201204
NetworkPermissionDao networkPermissionDaoMock;
202205

203206
@Spy

0 commit comments

Comments
 (0)