Web Development/streamlit

tkinter라이브러리를 이용해서 ip에 대한 접근관리 대시보드 구축하기

JackSmith 2023. 5. 23.

 

import tkinter as tk
from tkinter import messagebox

allowed_ips = []  # 허용된 IP 주소 목록

def add_ip():
    ip = entry.get()
    if ip.strip() != "":
        allowed_ips.append(ip)
        entry.delete(0, tk.END)
        messagebox.showinfo("알림", "IP 주소가 추가되었습니다.")

def remove_ip():
    ip = entry.get()
    if ip in allowed_ips:
        allowed_ips.remove(ip)
        entry.delete(0, tk.END)
        messagebox.showinfo("알림", "IP 주소가 제거되었습니다.")
    else:
        messagebox.showerror("오류", "해당 IP 주소가 목록에 없습니다.")

def check_ip():
    ip = entry.get()
    print("ip  : ",ip)
    if ip in allowed_ips:
        messagebox.showinfo("알림", "해당 IP 주소는 허용됩니다.")
    else:
        messagebox.showinfo("알림", "해당 IP 주소는 차단됩니다.")

#모든 ip체크하기
def check_all_ip():
    result = ""
    for ip in allowed_ips:
        result += str(ip) + "\n"
    messagebox.showinfo("ip_list:",result)



# Tkinter 창 생성
window = tk.Tk()
window.title("IP Access Management")
window.geometry("300x200")

# IP 주소 입력 필드
entry = tk.Entry(window, width=30)
entry.pack(pady=10)

# 버튼들
add_button = tk.Button(window, text="IP 추가", command=add_ip)
add_button.pack(pady=5)

remove_button = tk.Button(window, text="IP 제거", command=remove_ip)
remove_button.pack(pady=5)

check_button = tk.Button(window, text="IP 확인", command=check_ip)
check_button.pack(pady=5)

check_button = tk.Button(window, text="모든 IP 확인", command=check_all_ip)
check_button.pack(pady=5)

# Tkinter 창 실행
window.mainloop()

댓글