mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-08 06:16:08 +01:00
change the way permissions checked in dockermanager
This commit is contained in:
@@ -13,7 +13,9 @@ import json
|
|||||||
# Create your views here.
|
# Create your views here.
|
||||||
|
|
||||||
# This function checks if user has admin permissions
|
# This function checks if user has admin permissions
|
||||||
|
|
||||||
def dockerPermission(request, userID, context):
|
def dockerPermission(request, userID, context):
|
||||||
|
|
||||||
currentACL = ACLManager.loadedACL(userID)
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
|
|
||||||
if currentACL['admin'] != 1:
|
if currentACL['admin'] != 1:
|
||||||
@@ -34,9 +36,14 @@ def loadDockerHome(request):
|
|||||||
|
|
||||||
def installDocker(request):
|
def installDocker(request):
|
||||||
try:
|
try:
|
||||||
|
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager(userID, 'submitInstallDocker')
|
cm = ContainerManager(userID, 'submitInstallDocker')
|
||||||
cm.start()
|
cm.start()
|
||||||
@@ -54,8 +61,12 @@ def installDocker(request):
|
|||||||
def installImage(request):
|
def installImage(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.submitInstallImage(userID, json.loads(request.body))
|
coreResult = cm.submitInstallImage(userID, json.loads(request.body))
|
||||||
@@ -73,8 +84,13 @@ def viewContainer(request, name):
|
|||||||
request.GET['name'] = name
|
request.GET['name'] = name
|
||||||
|
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager(name)
|
cm = ContainerManager(name)
|
||||||
coreResult = cm.loadContainerHome(request, userID)
|
coreResult = cm.loadContainerHome(request, userID)
|
||||||
|
|
||||||
@@ -87,8 +103,12 @@ def viewContainer(request, name):
|
|||||||
def getTags(request):
|
def getTags(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.getTags(userID, json.loads(request.body))
|
coreResult = cm.getTags(userID, json.loads(request.body))
|
||||||
@@ -101,9 +121,14 @@ def getTags(request):
|
|||||||
@preDockerRun
|
@preDockerRun
|
||||||
def delContainer(request):
|
def delContainer(request):
|
||||||
try:
|
try:
|
||||||
|
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.submitContainerDeletion(userID, json.loads(request.body))
|
coreResult = cm.submitContainerDeletion(userID, json.loads(request.body))
|
||||||
@@ -117,8 +142,12 @@ def delContainer(request):
|
|||||||
def recreateContainer(request):
|
def recreateContainer(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.recreateContainer(userID, json.loads(request.body))
|
coreResult = cm.recreateContainer(userID, json.loads(request.body))
|
||||||
@@ -132,8 +161,12 @@ def recreateContainer(request):
|
|||||||
def runContainer(request):
|
def runContainer(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
return cm.createContainer(request, userID)
|
return cm.createContainer(request, userID)
|
||||||
@@ -144,8 +177,12 @@ def runContainer(request):
|
|||||||
def listContainers(request):
|
def listContainers(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
return cm.listContainers(request, userID)
|
return cm.listContainers(request, userID)
|
||||||
@@ -155,9 +192,14 @@ def listContainers(request):
|
|||||||
@preDockerRun
|
@preDockerRun
|
||||||
def getContainerLogs(request):
|
def getContainerLogs(request):
|
||||||
try:
|
try:
|
||||||
|
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.getContainerLogs(userID, json.loads(request.body))
|
coreResult = cm.getContainerLogs(userID, json.loads(request.body))
|
||||||
@@ -169,9 +211,14 @@ def getContainerLogs(request):
|
|||||||
@preDockerRun
|
@preDockerRun
|
||||||
def submitContainerCreation(request):
|
def submitContainerCreation(request):
|
||||||
try:
|
try:
|
||||||
|
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.submitContainerCreation(userID, json.loads(request.body))
|
coreResult = cm.submitContainerCreation(userID, json.loads(request.body))
|
||||||
@@ -185,8 +232,12 @@ def submitContainerCreation(request):
|
|||||||
def getContainerList(request):
|
def getContainerList(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
return cm.getContainerList(userID, json.loads(request.body))
|
return cm.getContainerList(userID, json.loads(request.body))
|
||||||
@@ -197,8 +248,12 @@ def getContainerList(request):
|
|||||||
def doContainerAction(request):
|
def doContainerAction(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.doContainerAction(userID, json.loads(request.body))
|
coreResult = cm.doContainerAction(userID, json.loads(request.body))
|
||||||
@@ -211,8 +266,12 @@ def doContainerAction(request):
|
|||||||
def getContainerStatus(request):
|
def getContainerStatus(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.getContainerStatus(userID, json.loads(request.body))
|
coreResult = cm.getContainerStatus(userID, json.loads(request.body))
|
||||||
@@ -225,8 +284,12 @@ def getContainerStatus(request):
|
|||||||
def exportContainer(request):
|
def exportContainer(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.exportContainer(request, userID)
|
coreResult = cm.exportContainer(request, userID)
|
||||||
@@ -239,8 +302,12 @@ def exportContainer(request):
|
|||||||
def saveContainerSettings(request):
|
def saveContainerSettings(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.saveContainerSettings(userID, json.loads(request.body))
|
coreResult = cm.saveContainerSettings(userID, json.loads(request.body))
|
||||||
@@ -253,8 +320,12 @@ def saveContainerSettings(request):
|
|||||||
def getContainerTop(request):
|
def getContainerTop(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.getContainerTop(userID, json.loads(request.body))
|
coreResult = cm.getContainerTop(userID, json.loads(request.body))
|
||||||
@@ -267,8 +338,12 @@ def getContainerTop(request):
|
|||||||
def assignContainer(request):
|
def assignContainer(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.assignContainer(userID, json.loads(request.body))
|
coreResult = cm.assignContainer(userID, json.loads(request.body))
|
||||||
@@ -281,8 +356,12 @@ def assignContainer(request):
|
|||||||
def searchImage(request):
|
def searchImage(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.searchImage(userID, json.loads(request.body))
|
coreResult = cm.searchImage(userID, json.loads(request.body))
|
||||||
@@ -294,10 +373,14 @@ def searchImage(request):
|
|||||||
@preDockerRun
|
@preDockerRun
|
||||||
def images(request):
|
def images(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
|
||||||
perm = dockerPermission(request, userID, 'images')
|
|
||||||
if perm: return perm
|
|
||||||
|
|
||||||
|
userID = request.session['userID']
|
||||||
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.images(request, userID)
|
coreResult = cm.images(request, userID)
|
||||||
@@ -310,8 +393,12 @@ def images(request):
|
|||||||
def manageImages(request):
|
def manageImages(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.manageImages(request, userID)
|
coreResult = cm.manageImages(request, userID)
|
||||||
@@ -324,9 +411,12 @@ def manageImages(request):
|
|||||||
def getImageHistory(request):
|
def getImageHistory(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
|
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
if currentACL['admin'] == 1:
|
||||||
if perm: return perm
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.getImageHistory(userID, json.loads(request.body))
|
coreResult = cm.getImageHistory(userID, json.loads(request.body))
|
||||||
@@ -339,8 +429,12 @@ def getImageHistory(request):
|
|||||||
def removeImage(request):
|
def removeImage(request):
|
||||||
try:
|
try:
|
||||||
userID = request.session['userID']
|
userID = request.session['userID']
|
||||||
perm = dockerPermission(request, userID, 'loadDockerHome')
|
currentACL = ACLManager.loadedACL(userID)
|
||||||
if perm: return perm
|
|
||||||
|
if currentACL['admin'] == 1:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
return ACLManager.loadErrorJson()
|
||||||
|
|
||||||
cm = ContainerManager()
|
cm = ContainerManager()
|
||||||
coreResult = cm.removeImage(userID, json.loads(request.body))
|
coreResult = cm.removeImage(userID, json.loads(request.body))
|
||||||
|
|||||||
Reference in New Issue
Block a user