Compare commits
113 Commits
8247bd8f46
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 626ef889ee | |||
| 059b334a14 | |||
| 88b5b9b005 | |||
| b52af30d1c | |||
| 0525a666cf | |||
| 108e378343 | |||
| fe417601a6 | |||
| 60573fc9ec | |||
| ec3e76181c | |||
| 66268900f6 | |||
| 587eb51e17 | |||
| 40da79bc59 | |||
| 81faac9d59 | |||
| c8be8f40f4 | |||
| 079d31710b | |||
| bb80ce2b03 | |||
| db70ae2bd7 | |||
| 8dd26cb2cb | |||
| 1f8325284a | |||
| 2da8850d10 | |||
| e996819a00 | |||
| ffa5b0ef8b | |||
| 9d522b85a6 | |||
| 56fc7dd565 | |||
| ae5b1ed774 | |||
| 4d479cdf34 | |||
| 6f25ef191b | |||
| 753f1e7dc1 | |||
| d8e466451c | |||
| 719a9b34cb | |||
| 6ddb5b8a80 | |||
| 944ec36b8a | |||
| 7b3136a642 | |||
| 6203846cf7 | |||
| ff5954498c | |||
| 8dcc2aff41 | |||
| 58e577358d | |||
| fcf0814fdd | |||
| 83dd128934 | |||
| 1dd95e0757 | |||
| 3f84aefd41 | |||
| e671c58a47 | |||
| f1b046645f | |||
| 9254a7449d | |||
| a24c1cd2be | |||
| 2e2144cfa1 | |||
| b595d7aa1c | |||
| 54cc673517 | |||
| 89ef548c56 | |||
| f10ef8c461 | |||
| 16101f0873 | |||
| 106bab6853 | |||
| ef228cd0a4 | |||
| 57ffad012d | |||
| 2b9ae59e0f | |||
| e2f12cc6c7 | |||
| d75c18e8db | |||
| 60e2c168f4 | |||
| d691d2227b | |||
| e6b86d59f6 | |||
| 865f1d577e | |||
| 5adb363cdc | |||
| 838577d1fb | |||
| fb553b0344 | |||
| 6473833e7f | |||
| 05ef77c956 | |||
| d3e746352a | |||
| 5b6720218a | |||
| 2d84a01cc1 | |||
| 82a4160450 | |||
| d0ff0c4767 | |||
| ceb2b5726c | |||
| 00a084c80f | |||
| c661719d02 | |||
| 9ebbbac474 | |||
| e6bf371ea7 | |||
| d7524e686f | |||
| b54696358b | |||
| 524c4f5f77 | |||
| 477d37ad76 | |||
| e72f3ad574 | |||
| 1a58afe4f4 | |||
| 0fc79abc4b | |||
| 2db0fbbc15 | |||
| 511e8a1271 | |||
| 152424e2ee | |||
| ee7e3a86d2 | |||
| abbaf21c29 | |||
| 505383fbf1 | |||
| 501c16ac4d | |||
| 33dead146a | |||
| 7bb4a3c000 | |||
| 98f775c713 | |||
| 442dd40a63 | |||
| 8e6dbf0d78 | |||
| 1d10510bf7 | |||
| 696461b545 | |||
| 593d009a03 | |||
| cf5a58dce3 | |||
| 9661506432 | |||
| 003a7180ef | |||
| 02ce9708a5 | |||
| b9761d5bc5 | |||
| d6168c53f0 | |||
| f21ea6ca0d | |||
| d7b8f6b234 | |||
| a7c1e3465c | |||
| c20e945dff | |||
| b5ba3014f2 | |||
| b588fe3541 | |||
| 8a7ccfb9ef | |||
| 9c047af4f7 | |||
| 2a0baff3b4 |
Generated
+1
-1
@@ -3,5 +3,5 @@
|
|||||||
<component name="Black">
|
<component name="Black">
|
||||||
<option name="sdkName" value="Python 3.9 (api)" />
|
<option name="sdkName" value="Python 3.9 (api)" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.9 (api)" project-jdk-type="Python SDK" />
|
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.11" project-jdk-type="Python SDK" />
|
||||||
</project>
|
</project>
|
||||||
+37
-5
@@ -5,7 +5,6 @@ class CL_Ping_Set(BaseModel):
|
|||||||
name: str
|
name: str
|
||||||
ipaddress: str
|
ipaddress: str
|
||||||
|
|
||||||
|
|
||||||
class CL_Database_get(BaseModel):
|
class CL_Database_get(BaseModel):
|
||||||
name: str
|
name: str
|
||||||
|
|
||||||
@@ -63,6 +62,7 @@ class CL_GET_USER_ID(BaseModel):
|
|||||||
class CL_ADD_USER_TO_GROUP(BaseModel):
|
class CL_ADD_USER_TO_GROUP(BaseModel):
|
||||||
dbname: str
|
dbname: str
|
||||||
member: str
|
member: str
|
||||||
|
groupname: str
|
||||||
|
|
||||||
class CL_ADD_REPORT_GROUP(BaseModel):
|
class CL_ADD_REPORT_GROUP(BaseModel):
|
||||||
user: str
|
user: str
|
||||||
@@ -90,8 +90,8 @@ class CL_GET_DATABASE(BaseModel):
|
|||||||
ip: str
|
ip: str
|
||||||
|
|
||||||
class CL_GET_VOLUMES(BaseModel):
|
class CL_GET_VOLUMES(BaseModel):
|
||||||
name: str
|
user: str
|
||||||
database: str
|
dbname: str
|
||||||
|
|
||||||
class CL_GET_CLIENT(BaseModel):
|
class CL_GET_CLIENT(BaseModel):
|
||||||
name: str
|
name: str
|
||||||
@@ -111,12 +111,17 @@ class CL_GET_HOST_USER(BaseModel):
|
|||||||
|
|
||||||
class CL_SET_HOST(BaseModel):
|
class CL_SET_HOST(BaseModel):
|
||||||
hostname: str
|
hostname: str
|
||||||
|
user: str
|
||||||
|
ipadresse: str
|
||||||
|
winver: str
|
||||||
|
cpuname: str
|
||||||
|
cores: int
|
||||||
dbname: str
|
dbname: str
|
||||||
ram: int
|
ram: int
|
||||||
hddfree: str
|
hddfree: str
|
||||||
hddused: str
|
hddused: str
|
||||||
hddtotal: str
|
hddtotal: str
|
||||||
ipadresse: str
|
netvolumeuser: str
|
||||||
|
|
||||||
class CL_GET_CPU(BaseModel):
|
class CL_GET_CPU(BaseModel):
|
||||||
hostname: str
|
hostname: str
|
||||||
@@ -133,12 +138,17 @@ class CL_SET_CPU(BaseModel):
|
|||||||
|
|
||||||
class CL_UPDATE_HOST(BaseModel):
|
class CL_UPDATE_HOST(BaseModel):
|
||||||
hostname: str
|
hostname: str
|
||||||
|
user: str
|
||||||
|
ipadresse: str
|
||||||
|
winver: str
|
||||||
|
cpuname: str
|
||||||
|
cores: int
|
||||||
dbname: str
|
dbname: str
|
||||||
ram: int
|
ram: int
|
||||||
hddfree: str
|
hddfree: str
|
||||||
hddused: str
|
hddused: str
|
||||||
hddtotal: str
|
hddtotal: str
|
||||||
ipadresse: str
|
netvolumeuser: str
|
||||||
|
|
||||||
class CL_SET_LASTLOGON_USER(BaseModel):
|
class CL_SET_LASTLOGON_USER(BaseModel):
|
||||||
userID: int
|
userID: int
|
||||||
@@ -152,3 +162,25 @@ class CL_ADD_CLIENT(BaseModel):
|
|||||||
class CL_GET_USER(BaseModel):
|
class CL_GET_USER(BaseModel):
|
||||||
user: str
|
user: str
|
||||||
database: str
|
database: str
|
||||||
|
|
||||||
|
class CL_GET_USER_CLIENT(BaseModel):
|
||||||
|
dbname: str
|
||||||
|
hostname: str
|
||||||
|
|
||||||
|
class CL_ADD_GROUP_VOLUME(BaseModel):
|
||||||
|
label: str
|
||||||
|
path: str
|
||||||
|
letter: str
|
||||||
|
group: str
|
||||||
|
dbname: str
|
||||||
|
|
||||||
|
class CL_ERROR_LOG(BaseModel):
|
||||||
|
datum: str
|
||||||
|
hostname: str
|
||||||
|
samaccountname: str
|
||||||
|
errorcode: str
|
||||||
|
|
||||||
|
class CL_REPORTING(BaseModel):
|
||||||
|
username: str
|
||||||
|
lastaccess: str
|
||||||
|
ipaddress: str
|
||||||
@@ -69,7 +69,7 @@ async def database_get(get: CL.CL_Database_get,api_key: APIKey = Depends(auth.ge
|
|||||||
@app.post("/host/get/netvolume")
|
@app.post("/host/get/netvolume")
|
||||||
async def getvolume(get: CL.CL_GET_VOLUMES,api_key: APIKey = Depends(auth.get_api_key)):
|
async def getvolume(get: CL.CL_GET_VOLUMES,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
## Anpassung zum neune Schema erstellen
|
## Anpassung zum neune Schema erstellen
|
||||||
result = database(f"SELECT `Netzlaufwerk_1`,`Netzlaufwerk_2`,`Netzlaufwerk_3`,`Netzlaufwerk_4`,`Netzlaufwerk_5`,`Netzlaufwerk_6`,`Netzlaufwerk_7`,`Netzlaufwerk_8`,`Netzlaufwerk_9`,`Netzlaufwerk_10` FROM `Clients` where `Name` = '{get.name}'",f"{get.database}","")
|
result = database(f"SELECT `{get.dbname}`.Netvolume.Volume_Path, `{get.dbname}`.Netvolume.Volume_Key, `{get.dbname}`.Netvolume.Volume_Name FROM `{get.dbname}`.`Active-Directory-User` INNER JOIN `{get.dbname}`.GruppenToADUser ON `{get.dbname}`.GruppenToADUser.ADUserID = `{get.dbname}`.`Active-Directory-User`.ID INNER JOIN `{get.dbname}`.Gruppen ON `{get.dbname}`.GruppenToADUser.GruppenID = `{get.dbname}`.Gruppen.id INNER JOIN `{get.dbname}`.GruppenToNetvolumes ON `{get.dbname}`.GruppenToNetvolumes.GruppenID = `{get.dbname}`.Gruppen.id INNER JOIN `{get.dbname}`.Netvolume ON `{get.dbname}`.GruppenToNetvolumes.NetvolumeID = `{get.dbname}`.Netvolume.ID WHERE `{get.dbname}`.`Active-Directory-User`.SamAccountName = '{get.user}' ORDER BY `{get.dbname}`.`Active-Directory-User`.SamAccountName DESC","","")
|
||||||
volume = []
|
volume = []
|
||||||
if not result:
|
if not result:
|
||||||
return False
|
return False
|
||||||
@@ -88,7 +88,7 @@ async def getuser(get: CL.CL_GET_USER,api_key: APIKey = Depends(auth.get_api_key
|
|||||||
|
|
||||||
@app.post("/host/get")
|
@app.post("/host/get")
|
||||||
async def gethost(get: CL.CL_GET_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
async def gethost(get: CL.CL_GET_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
result = database(f"SELECT id FROM `hardware` where `hostname` = '{get.hostname}'",f"{get.dbname}","")
|
result = database(f"SELECT id FROM `Clients` where `Host-Name` = '{get.hostname}'",f"{get.dbname}","")
|
||||||
if not result:
|
if not result:
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
@@ -107,6 +107,7 @@ async def getcpu(get: CL.CL_GET_CPU,api_key: APIKey = Depends(auth.get_api_key))
|
|||||||
@app.post("/host/get/database")
|
@app.post("/host/get/database")
|
||||||
async def getdatabase(get: CL.CL_GET_DATABASE,api_key: APIKey = Depends(auth.get_api_key)):
|
async def getdatabase(get: CL.CL_GET_DATABASE,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
result = database(f"SELECT Datenbank FROM `Kunden` where `Subnetz` = '{get.ip}'","Stines-GmbH","")
|
result = database(f"SELECT Datenbank FROM `Kunden` where `Subnetz` = '{get.ip}'","Stines-GmbH","")
|
||||||
|
print(result[0][0])
|
||||||
if not result:
|
if not result:
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
@@ -114,33 +115,42 @@ async def getdatabase(get: CL.CL_GET_DATABASE,api_key: APIKey = Depends(auth.get
|
|||||||
|
|
||||||
@app.post("/host/set")
|
@app.post("/host/set")
|
||||||
async def sethost(get: CL.CL_SET_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
async def sethost(get: CL.CL_SET_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
database(f"INSERT INTO `{get.dbname}`.hardware (hostname,ipadresse,ram,hddused,hddfree,hddtotal) VALUES ('{get.hostname}','{get.ipadresse}','{get.ram}','{get.hddused}','{get.hddfree}','{get.hddtotal}')","","")
|
database(f"INSERT INTO `{get.dbname}`.Clients (`Host-Name`,SamAccountName,`IP-Adresse`,`Windows-Version`,`CPU-Name`,`Prozessor-Anzahl`,RAM,Speichergesamt,Speicherfrei,Speicherbelegt, NetVolumeUser) VALUES ('{get.hostname}','{get.user}','{get.ipadresse}','{get.winver}','{get.cpuname}','{get.cores}','{get.ram}','{get.hddtotal}','{get.hddfree}','{get.hddused}',{get.netvolumeuser})","","")
|
||||||
result = database(
|
hostid = database(
|
||||||
f"SELECT id FROM `{get.dbname}`.hardware WHERE hostname = '{get.hostname}')",
|
f"SELECT id FROM `{get.dbname}`.Clients WHERE `Host-Name` = '{get.hostname}'",
|
||||||
"", "")
|
"", "")
|
||||||
if not result:
|
userid = database(
|
||||||
|
f"SELECT id FROM `{get.dbname}`.User WHERE `SamAccountName` = '{get.user}'",
|
||||||
|
"", "")
|
||||||
|
if not userid:
|
||||||
|
userid = database(
|
||||||
|
f"SELECT id FROM `{get.dbname}`.`Active-Directory-User` WHERE `SamAccountName` = '{get.user}'",
|
||||||
|
"", "")
|
||||||
|
database(f"INSERT INTO `{get.dbname}`.ClientsToUser (clientsid,userid) VALUES ({hostid},{userid})","","")
|
||||||
|
if not hostid:
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
return result[0][0]
|
return hostid[0][0]
|
||||||
|
|
||||||
@app.post("/host/set/cpu")
|
# @app.post("/host/cpu")
|
||||||
async def setcpu(get: CL.CL_SET_CPU,api_key: APIKey = Depends(auth.get_api_key)):
|
# async def setcpu(get: CL.CL_SET_CPU,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
database(f"INSERT INTO `{get.dbname}`.cpulist (cpuname,ghz,cputyp) VALUES ('{get.cpuname}','{get.ghz}','{get.cputyp}')","","")
|
# check = database(f"SELECT id FROM `{get.dbname}`.cpulist WHERE cpuname = '{get.cpuname}' AND ghz")
|
||||||
result = database(
|
# database(f"INSERT INTO `{get.dbname}`.cpulist (cpuname,ghz,cputyp) VALUES ('{get.cpuname}','{get.ghz}','{get.cputyp}')","","")
|
||||||
f"SELECT id FROM `{get.dbname}`.cpulist WHERE cpuname = '{get.cpuname} AND cputyp = {get.cputyp}')",
|
# result = database(
|
||||||
"", "")
|
# f"SELECT id FROM `{get.dbname}`.cpulist WHERE cpuname = '{get.cpuname} AND cputyp = {get.cputyp}')",
|
||||||
database(
|
# "", "")
|
||||||
f"INSERT INTO `{get.dbname}`.cpu_to_client (hardwareID,cpulistID) VALUES ('{get.hardwareID}','{result[0][0]}',)",
|
# database(
|
||||||
"", "")
|
# f"INSERT INTO `{get.dbname}`.cpu_to_client (hardwareID,cpulistID) VALUES ('{get.hardwareID}','{result[0][0]}',)",
|
||||||
if not result:
|
# "", "")
|
||||||
return False
|
# if not result:
|
||||||
else:
|
# return False
|
||||||
return result[0][0]
|
# else:
|
||||||
|
# return result[0][0]
|
||||||
|
|
||||||
@app.post("/host/update")
|
@app.post("/host/update")
|
||||||
async def updatehost(get: CL.CL_UPDATE_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
async def updatehost(get: CL.CL_UPDATE_HOST,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
database(f"UPDATE `{get.dbname}`.hardware SET ipadresse = '{get.ipadresse}', ram = '{get.ram}', hddused = '{get.hddused}' ,hddfree = '{get.hddfree}',hddtotal = '{get.hddtotal}' WHERE hostname = '{get.hostname}'","","")
|
database(f"UPDATE `{get.dbname}`.Clients SET SamAccountName = '{get.user}',`IP-Adresse` = '{get.ipadresse}',`Windows-Version` = '{get.winver}',`CPU-Name` = '{get.cpuname}',`Prozessor-Anzahl` = {get.cores},RAM = {get.ram},Speichergesamt = '{get.hddtotal}',Speicherfrei = '{get.hddfree}',Speicherbelegt = '{get.hddused}',NetVolumeUser = '{get.netvolumeuser}', LastChange = '{datetime.now()}' WHERE `Host-Name` = '{get.hostname}'","","")
|
||||||
result = database(f"SELECT id FROM `{get.dbname}`.hardware WHERE hostname = '{get.hostname}'","", "")
|
result = database(f"SELECT id FROM `{get.dbname}`.Clients WHERE `Host-Name` = '{get.hostname}'","", "")
|
||||||
if not result:
|
if not result:
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
@@ -148,9 +158,7 @@ async def updatehost(get: CL.CL_UPDATE_HOST,api_key: APIKey = Depends(auth.get_a
|
|||||||
|
|
||||||
@app.post("/user/set")
|
@app.post("/user/set")
|
||||||
async def set_user(get: CL.CL_SET_HOST_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
async def set_user(get: CL.CL_SET_HOST_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
database(f"INSERT INTO `{get.dbname}`.user (user) VALUES ('{get.user}')","","")
|
result = database(f"INSERT INTO `{get.dbname}`.ClientsUser (SamAccountName) VALUES ('{get.user}')","","")
|
||||||
result = database(f"SELECT id FROM `{get.dbname}`.user WHERE user = '{get.user}'","","")
|
|
||||||
database(f"INSERT INTO `{get.dbname}`.hardware_to_user (userID,hardwareID) VALUES ('{result[0][0]}',{get.hardwareID})", "", "")
|
|
||||||
if not result:
|
if not result:
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
@@ -158,21 +166,16 @@ async def set_user(get: CL.CL_SET_HOST_USER,api_key: APIKey = Depends(auth.get_a
|
|||||||
|
|
||||||
@app.post("/user/get")
|
@app.post("/user/get")
|
||||||
async def get_user(get: CL.CL_GET_HOST_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
async def get_user(get: CL.CL_GET_HOST_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
result = database(f"SELECT id FROM `{get.dbname}`.user WHERE user = '{get.user}'","","")
|
result = database(f"SELECT id FROM `{get.dbname}`.`Active-Directory-User` WHERE SamAccountName = '{get.user}' ORDER BY ID DESC LIMIT 1","","")
|
||||||
if not result:
|
if not result:
|
||||||
return False
|
result = database(
|
||||||
else:
|
f"SELECT id FROM `{get.dbname}`.`Clients` WHERE SamAccountName = '{get.user}' ORDER BY ID DESC LIMIT 1",
|
||||||
|
"", "")
|
||||||
return result[0][0]
|
return result[0][0]
|
||||||
|
|
||||||
@app.post("/user/set/lastlogon")
|
@app.post("/user/set/lastlogon")
|
||||||
async def set_lastlogon_user(get: CL.CL_SET_LASTLOGON_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
async def set_lastlogon_user(get: CL.CL_SET_LASTLOGON_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
database(f"INSERT INTO `{get.dbname}`.lastlogon (lastlogon) VALUES ('{get.lastlogon}')","","")
|
database(f"INSERT INTO `{get.dbname}`.LastLogonToADUser (aduserid,lastlogon) VALUES ('{get.userID}','{get.lastlogon}')", "", "")
|
||||||
lastlogonid = database(f"SELECT id FROM `{get.dbname}`.lastlogon WHERE lastlogon = '{get.lastlogon}'","","")
|
|
||||||
result = database(f"INSERT INTO `{get.dbname}`.lastlogon_to_user (userID,lastlogonID) VALUES ('{get.userID}','{lastlogonid[0][0]}')", "", "")
|
|
||||||
if not result:
|
|
||||||
return False
|
|
||||||
else:
|
|
||||||
return result[0][0]
|
|
||||||
|
|
||||||
|
|
||||||
@app.post("/info/getclient")
|
@app.post("/info/getclient")
|
||||||
@@ -183,6 +186,15 @@ async def getclient(get: CL.CL_GET_CLIENT,api_key: APIKey = Depends(auth.get_api
|
|||||||
else:
|
else:
|
||||||
return result[0][0]
|
return result[0][0]
|
||||||
|
|
||||||
|
@app.post("/client/user/get")
|
||||||
|
async def getclient(get: CL.CL_GET_USER_CLIENT,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
|
result = database(f"SELECT NetVolumeUser FROM `{get.dbname}`.`Clients` where `Host-Name` = '{get.hostname}'","","")
|
||||||
|
if not result:
|
||||||
|
return False
|
||||||
|
else:
|
||||||
|
return result[0][0]
|
||||||
|
|
||||||
|
|
||||||
@app.post("/info/addclient")
|
@app.post("/info/addclient")
|
||||||
async def addclient(addclient: CL.CL_ADD_CLIENT,api_key: APIKey = Depends(auth.get_api_key)):
|
async def addclient(addclient: CL.CL_ADD_CLIENT,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
print(addclient.query)
|
print(addclient.query)
|
||||||
@@ -238,6 +250,11 @@ async def add_report_user(get: CL.CL_ADD_REPORT_USER,api_key: APIKey = Depends(a
|
|||||||
print(database(get.query,get.dbname,""))
|
print(database(get.query,get.dbname,""))
|
||||||
return f"Create {get.query} - {get.dbname}"
|
return f"Create {get.query} - {get.dbname}"
|
||||||
|
|
||||||
|
@app.post("/ad/user/disabled")
|
||||||
|
async def disabled_user(get: CL.CL_CHECK_DISABLED_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
|
result = database(f"SELECT `{get.dbname}`.`Gruppen`.`Name` ,`{get.dbname}`.`GruppenToADUser`.`Deaktiviert` from `{get.dbname}`.`Active-Directory-User` INNER join `{get.dbname}`.`GruppenToADUser` on `{get.dbname}`.`Active-Directory-User`.`ID` = `{get.dbname}`.`GruppenToADUser`.`ADUserID` INNER join`{get.dbname}`.`Gruppen` on `{get.dbname}`.`Gruppen`.`ID` = `{get.dbname}`.`GruppenToADUser`.`GruppenID` WHERE `{get.dbname}`.`Active-Directory-User`.`SamAccountName` = '{get.user}'",f"{get.dbname}","")
|
||||||
|
return result
|
||||||
|
|
||||||
@app.post("/report/getgroup")
|
@app.post("/report/getgroup")
|
||||||
async def get_report_group(get: CL.CL_GET_REPORT_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
async def get_report_group(get: CL.CL_GET_REPORT_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
result = database(f"SELECT ID FROM `{get.dbname}`.`Gruppen` WHERE Name = '{get.group_name}'","","")
|
result = database(f"SELECT ID FROM `{get.dbname}`.`Gruppen` WHERE Name = '{get.group_name}'","","")
|
||||||
@@ -249,7 +266,7 @@ async def get_report_group(get: CL.CL_GET_REPORT_GROUP,api_key: APIKey = Depends
|
|||||||
|
|
||||||
@app.post("/report/getuserid")
|
@app.post("/report/getuserid")
|
||||||
async def get_user_id(get: CL.CL_GET_USER_ID,api_key: APIKey = Depends(auth.get_api_key)):
|
async def get_user_id(get: CL.CL_GET_USER_ID,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
result = database(f"SELECT ID FROM `{get.dbname}`.`User` WHERE SamAccountName = '{get.user}'","","")
|
result = database(f"SELECT ID FROM `{get.dbname}`.`Active-Directory-User` WHERE SamAccountName = '{get.user}'","","")
|
||||||
if not result:
|
if not result:
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
@@ -257,12 +274,20 @@ async def get_user_id(get: CL.CL_GET_USER_ID,api_key: APIKey = Depends(auth.get_
|
|||||||
|
|
||||||
@app.post("/report/addusertogroup")
|
@app.post("/report/addusertogroup")
|
||||||
async def get_addusertogroup(get: CL.CL_ADD_USER_TO_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
async def get_addusertogroup(get: CL.CL_ADD_USER_TO_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
userid = database(f"SELECT ID FROM `{get.dbname}`.Active-Directory-User WHERE SamAccountName = {get.member} ORDER BY ID DESC LIMIT 1","","")
|
userid = database(f"SELECT ID FROM `{get.dbname}`.`Active-Directory-User` WHERE SamAccountName = '{get.member}' ORDER BY ID DESC LIMIT 1","","")[0][0]
|
||||||
print(userid)
|
groupid = database(f"SELECT ID FROM `{get.dbname}`.Gruppen WHERE Name = '{get.groupname}'","","")
|
||||||
check = database(f"SELECT * FROM `{get.dbname}`.GruppenToUser WHERE UserID = {get.userID} AND GruppenID = {get.groupID}","","")
|
if not groupid:
|
||||||
|
database(f"INSERT INTO `{get.dbname}`.Gruppen (Name) VALUES ('{get.groupname}')","","")
|
||||||
|
groupid = database(f"SELECT ID FROM `{get.dbname}`.Gruppen WHERE Name = '{get.groupname}'", "", "")[0][0]
|
||||||
|
check = database(f"SELECT * FROM `{get.dbname}`.GruppenToADUser WHERE ADUserID = {userid} AND GruppenID = {groupid[0][0]}","","")
|
||||||
if not check:
|
if not check:
|
||||||
database(f"INSERT INTO `{get.dbname}`.GruppenToUser (UserID,GruppenID) VALUES ({get.userID},{get.groupID})","","")
|
database(f"INSERT INTO `{get.dbname}`.GruppenToADUser (ADUserID,GruppenID) VALUES ({userid},{groupid[0][0]})","","")
|
||||||
else:
|
else:
|
||||||
|
newid = database(f"SELECT db1.ID FROM `{get.dbname}`.`Active-Directory-User` as db1 WHERE db1.SamAccountName = '{get.member}' ORDER BY ID DESC LIMIT 1","","")
|
||||||
|
print(newid)
|
||||||
|
oldid = database(f"SELECT gtu.ADUserID FROM `{get.dbname}`.GruppenToADUser as gtu INNER JOIN `{get.dbname}`.`Active-Directory-User` as db2 ON gtu.ADUserID = db2.id WHERE db2.SamAccountName = '{get.member}' LIMIT 1","","")
|
||||||
|
print(oldid)
|
||||||
|
database(f"UPDATE `{get.dbname}`.GruppenToADUser as gtu SET gtu.ADUserID = '{newid[0][0]}' WHERE gtu.ADUserID = '{oldid[0][0]}'","","")
|
||||||
return check
|
return check
|
||||||
|
|
||||||
@app.post("/report/addgroup")
|
@app.post("/report/addgroup")
|
||||||
@@ -270,6 +295,11 @@ async def get_addreport_group(get: CL.CL_ADD_REPORT_GROUP,api_key: APIKey = Depe
|
|||||||
print(database(get.query,get.dbname,""))
|
print(database(get.query,get.dbname,""))
|
||||||
return f"Create {get.query} - {get.dbname}"
|
return f"Create {get.query} - {get.dbname}"
|
||||||
|
|
||||||
|
@app.post("/report/errorlog")
|
||||||
|
async def get_errorlog(get: CL.CL_ERROR_LOG,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
|
print(database(f"INSERT INTO {get.dname}.ERROR_LOG (datum,hostname,samaccouuntname,fehlercode) VALUES ({get.datum},{get.hostname},{get.user},{get.errocode})","",""))
|
||||||
|
return f"ADD {get.errocode} - {get.hostname}"
|
||||||
|
|
||||||
@app.post("/ad/addgroup")
|
@app.post("/ad/addgroup")
|
||||||
async def add_ad_user(get: CL.CL_ADD_AD_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
async def add_ad_user(get: CL.CL_ADD_AD_GROUP,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
print(database(get.query,get.dbname,get.entry))
|
print(database(get.query,get.dbname,get.entry))
|
||||||
@@ -280,20 +310,52 @@ async def add_ad_user(get: CL.CL_ADD_EX_USER,api_key: APIKey = Depends(auth.get_
|
|||||||
print(database(get.query,get.dbname,get.entry))
|
print(database(get.query,get.dbname,get.entry))
|
||||||
return f"Create {get.query} - {get.dbname}"
|
return f"Create {get.query} - {get.dbname}"
|
||||||
|
|
||||||
|
@app.post("/add/group/volume")
|
||||||
|
async def send_group_volume(get: CL.CL_ADD_GROUP_VOLUME,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
|
volume_id = database(f"SELECT ID FROM Netvolume WHERE Volume_Path = '{get.path}' AND Volume_Name = '{get.label}'", f"{get.dbname}", "")
|
||||||
|
if not volume_id:
|
||||||
|
database(f"INSERT INTO `{get.dbname}`.Netvolume (Volume_Key,Volume_Path,Volume_Name) VALUES ('{get.letter}','{get.path}','{get.label}')", "",
|
||||||
|
"")
|
||||||
|
group_id = database(f"SELECT GruppenID FROM GruppenToNetvolumes WHERE NetvolumeID = '{volume_id[0][0]}'", f"{get.dbname}", "")
|
||||||
|
if not group_id:
|
||||||
|
group_id = database(f"SELECT ID FROM `{get.dbname}`.Gruppen WHERE Name = '{get.group}'", "","")
|
||||||
|
if not group_id:
|
||||||
|
group_id = database(f"SELECT ID FROM `{get.dbname}`.`Active-Directory-User` WHERE SamAccountName = '{get.group}' ORDER BY ID DESC LIMIT 1", "", "")
|
||||||
|
database(f"INSERT INTO `{get.dbname}`.GruppenToNetvolumes (UserID,NetvolumeID) VALUES ('{group_id[0][0]}','{volume_id[0][0]}')", "","")
|
||||||
|
else:
|
||||||
|
database(
|
||||||
|
f"INSERT INTO `{get.dbname}`.GruppenToNetvolumes (GruppenID,NetvolumeID) VALUES ('{group_id[0][0]}','{volume_id[0][0]}')",
|
||||||
|
"", "")
|
||||||
|
# database(get.query,get.dbname,get.entry)
|
||||||
|
return f"Create {get.label} - {get.path}"
|
||||||
|
|
||||||
@app.post("/checkdisabledduser")
|
|
||||||
async def disabled_user(get: CL.CL_CHECK_DISABLED_USER,api_key: APIKey = Depends(auth.get_api_key)):
|
|
||||||
result = database(
|
|
||||||
f"SELECT `{get.dbname}`.`Gruppen`.`Name` ,`{get.dbname}`.`GruppenToUser`.`Deaktiviert` from `{get.dbname}`.`User` INNER join `{get.dbname}`.`GruppenToUser` on `{get.dbname}`.`User`.`ID` = `{get.dbname}`.`GruppenToUser`.`UserID` INNER join`{get.dbname}`.`Gruppen` on `{get.dbname}`.`Gruppen`.`ID` = `{get.dbname}`.`GruppenToUser`.`GruppenID` WHERE `{get.dbname}`.`User`.`SamAccountName` = '{get.user}' AND `{get.dbname}`.`GruppenToUser`.`Deaktiviert` LIKE '%{datetime.now().strftime('%Y-%m-%d')}%'",f"{get.dbname}","")
|
|
||||||
print(f"SELECT `{get.dbname}`.`Gruppen`.`Name` ,`{get.dbname}`.`GruppenToUser`.`Deaktiviert` from `{get.dbname}`.`User` INNER join `{get.dbname}`.`GruppenToUser` on `{get.dbname}`.`User`.`ID` = `{get.dbname}`.`GruppenToUser`.`UserID` INNER join`{get.dbname}`.`Gruppen` on `{get.dbname}`.`Gruppen`.`ID` = `{get.dbname}`.`GruppenToUser`.`GruppenID` WHERE `{get.dbname}`.`User`.`SamAccountName` = '{get.user}' AND `{get.dbname}`.`GruppenToUser`.`Deaktiviert` LIKE '%{datetime.now().strftime('%Y-%m-%d')}%'")
|
|
||||||
print(result)
|
|
||||||
return result
|
|
||||||
|
|
||||||
@app.post("/volume_mount")
|
@app.post("/volume_mount")
|
||||||
async def volume_mount(get: CL.CL_GET_VOLUME,api_key: APIKey = Depends(auth.get_api_key)):
|
async def volume_mount(get: CL.CL_GET_VOLUME,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
database(f"INSERT INTO `Volume-Mount` (date,user) VALUES ('{get.date}','{get.user}')","Stines-GmbH","")
|
database(f"INSERT INTO `Volume-Mount` (date,user) VALUES ('{get.date}','{get.user}')","Stines-GmbH","")
|
||||||
return f"User {get.user} ADD"
|
return f"User {get.user} ADD"
|
||||||
|
|
||||||
|
@app.post("/report")
|
||||||
|
async def reporting(get: CL.CL_REPORTING,api_key: APIKey = Depends(auth.get_api_key)):
|
||||||
|
print(f"{get.username}")
|
||||||
|
print(f"{get.lastaccess}")
|
||||||
|
print(f"{get.ipaddress}")
|
||||||
|
user_check = database(f"SELECT username from users where username = '{get.username}'","Kunden","")
|
||||||
|
if not user_check:
|
||||||
|
print("User not exist")
|
||||||
|
# TBD add Message to Admin by Gotify or E-Mail
|
||||||
|
else:
|
||||||
|
entry = database(f"SELECT s.customer_ID,s.service_ID from `server` s where s.privat_ipaddress LIKE '%{get.ipaddress}%'","Kunden","")
|
||||||
|
customer_ID = entry[0][0]
|
||||||
|
service_ID = entry[0][1]
|
||||||
|
reportingdate = datetime.now()
|
||||||
|
reportingdate = reportingdate.strftime("%Y-%m-%d %H:%M:%S")
|
||||||
|
print(reportingdate)
|
||||||
|
database(f"INSERT INTO `services.reporting` (username,service_ID,customer_ID,reportingdate,lastaccess) VALUES ('{get.username}','{service_ID}','{customer_ID}','{reportingdate}','{get.lastaccess}')","Kunden","")
|
||||||
|
print(f"INSERT INTO `services.reporting` (username,service_ID,customer_ID,reportingdate,lastaccess) VALUES ('{get.username}','{service_ID}','{customer_ID}','{reportingdate}','{get.lastaccess}')","Kunden","")
|
||||||
|
print(f"{service_ID} - {customer_ID}")
|
||||||
|
|
||||||
|
|
||||||
## Startet den API-Server
|
## Startet den API-Server
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
uvicorn.run("main:app", host='0.0.0.0', port=8001, reload=True, log_level="debug")
|
uvicorn.run("main:app", host='0.0.0.0', port=8001, reload=True, log_level="debug")
|
||||||
Binary file not shown.
Reference in New Issue
Block a user