Change name from Alive-Services
This commit is contained in:
@@ -2,42 +2,47 @@ import subprocess
|
||||
import csv
|
||||
from datetime import datetime
|
||||
from Controller import mysql_connect
|
||||
import requests
|
||||
|
||||
def request(function,variable):
|
||||
url = (f"http://api.stines.de:8001/{function}")
|
||||
response = requests.post(url,json = variable,headers={'access_token':'^YWUbG7yX*V!tV^KBSd*2c&vdN3wV9a2i7f3hfGFMBYFxi6#mMiJGiaA5KEHE%B*miK%qb7rQ67gmcYP@gqmux8'})
|
||||
return response
|
||||
|
||||
|
||||
def adcontroller (ip,name):
|
||||
command = ["powershell", "-Command",
|
||||
"Get-ADUser -Filter * -Properties * | Export-Csv -NoTypeInformation -Encoding UTF8 -Path 'users.csv'"]
|
||||
subprocess.run(command)
|
||||
# CSV-Datei einlesen und Feldnamen auslesen
|
||||
with open("users.csv", "r", encoding='utf-8-sig') as file:
|
||||
reader = csv.DictReader(file)
|
||||
fieldnames = reader.fieldnames
|
||||
|
||||
# Tabelle erstellen, falls sie noch nicht existiert
|
||||
table_name = "Active-Directory-User"
|
||||
create_table_query = f"CREATE TABLE IF NOT EXISTS `{table_name}` (id INT AUTO_INCREMENT PRIMARY KEY, importdate BIGINT(11), "
|
||||
for field in fieldnames:
|
||||
create_table_query += f"`{field}` TEXT, "
|
||||
create_table_query = create_table_query.rstrip(", ") + ")"
|
||||
mysql_connect.create_database(create_table_query, name)
|
||||
|
||||
# Daten aus der CSV-Datei in die Tabelle einfügen
|
||||
with open("users.csv", "r", encoding='utf-8-sig') as file:
|
||||
reader = csv.reader(file)
|
||||
next(reader) # Überspringe die erste Zeile (Feldnamen)
|
||||
for row in reader:
|
||||
row = [cell if cell.strip() else "-" for cell in row]
|
||||
unix_time = int(datetime.now().timestamp())
|
||||
print(unix_time)
|
||||
row = [unix_time] + row
|
||||
insert_query = f"INSERT INTO `{table_name}` (importdate, `{'`, `'.join(fieldnames)}`) VALUES (%s, {', '.join(['%s'] * len(fieldnames))})"
|
||||
mysql_connect.add_user(insert_query, name, row)
|
||||
|
||||
# Datenbankverbindung schließen
|
||||
|
||||
command = ["powershell", "-Command",
|
||||
"Get-ADGroupMember -Identity G-RDP-User | Export-Csv -NoTypeInformation -Encoding UTF8 -Path 'group.csv'"]
|
||||
subprocess.run(command)
|
||||
# command = ["powershell", "-Command",
|
||||
# "Get-ADUser -Filter * -Properties * | Export-Csv -NoTypeInformation -Encoding UTF8 -Path 'users.csv'"]
|
||||
# subprocess.run(command)
|
||||
# # CSV-Datei einlesen und Feldnamen auslesen
|
||||
# with open("users.csv", "r", encoding='utf-8-sig') as file:
|
||||
# reader = csv.DictReader(file)
|
||||
# fieldnames = reader.fieldnames
|
||||
#
|
||||
# # Tabelle erstellen, falls sie noch nicht existiert
|
||||
# table_name = "Active-Directory-User"
|
||||
# create_table_query = f"CREATE TABLE IF NOT EXISTS `{table_name}` (id INT AUTO_INCREMENT PRIMARY KEY, importdate BIGINT(11), "
|
||||
# for field in fieldnames:
|
||||
# create_table_query += f"`{field}` TEXT, "
|
||||
# create_table_query = create_table_query.rstrip(", ") + ")"
|
||||
# request("dbset", {"query": create_table_query, 'dbname': name})
|
||||
#
|
||||
# # Daten aus der CSV-Datei in die Tabelle einfügen
|
||||
# with open("users.csv", "r", encoding='utf-8-sig') as file:
|
||||
# reader = csv.reader(file)
|
||||
# next(reader) # Überspringe die erste Zeile (Feldnamen)
|
||||
# for row in reader:
|
||||
# row = [cell if cell.strip() else "-" for cell in row]
|
||||
# unix_time = int(datetime.now().timestamp())
|
||||
# print(unix_time)
|
||||
# row = [unix_time] + row
|
||||
# insert_query = f"INSERT INTO `{table_name}` (importdate, `{'`, `'.join(fieldnames)}`) VALUES (%s, {', '.join(['%s'] * len(fieldnames))})"
|
||||
# print(request("add_ad_user", {"query": insert_query, 'dbname': name, 'entry': row}).text)
|
||||
# # mysql_connect.add_user(insert_query, name, row)
|
||||
#
|
||||
# command = ["powershell", "-Command",
|
||||
# "Get-ADGroupMember -Identity G-RDP-User | Export-Csv -NoTypeInformation -Encoding UTF8 -Path 'group.csv'"]
|
||||
# subprocess.run(command)
|
||||
|
||||
# CSV-Datei einlesen und Feldnamen auslesen
|
||||
with open("group.csv", "r", encoding='utf-8-sig') as file:
|
||||
@@ -48,7 +53,7 @@ def adcontroller (ip,name):
|
||||
for field in fieldnames:
|
||||
create_table_query += f"`{field}` TEXT, "
|
||||
create_table_query = create_table_query.rstrip(", ") + ")"
|
||||
mysql_connect.create_database(create_table_query, name)
|
||||
request("dbset", {"query": create_table_query, 'dbname': name})
|
||||
|
||||
# Daten aus der CSV-Datei in die Tabelle aktualisieren oder einfügen
|
||||
with open("group.csv", "r", encoding='utf-8-sig') as file:
|
||||
@@ -58,7 +63,10 @@ def adcontroller (ip,name):
|
||||
|
||||
# Abfrage, um die ID für den Benutzernamen zu erhalten
|
||||
query_id = f"SELECT id FROM `{table_name}` WHERE SamAccountName = %s"
|
||||
result = mysql_connect.get_user(query_id, name, (sam_account_name,))
|
||||
|
||||
result = request("get_ad_user", {"query": query_id, 'dbname': name}).text
|
||||
print(result)
|
||||
# result = mysql_connect.get_user(query_id, name, (sam_account_name,))
|
||||
|
||||
if result:
|
||||
user_id = result[0]
|
||||
@@ -89,3 +97,6 @@ def adcontroller (ip,name):
|
||||
print(row_data)
|
||||
mysql_connect.add_user(insert_query, name, row_data)
|
||||
# connection.commit()
|
||||
|
||||
|
||||
adcontroller("172.18.1.6","tnp-Invest-GmbH")
|
||||
Reference in New Issue
Block a user