## Opis Skrypt zbiera dane systemowe (np. system operacyjny, CPU, RAM, dyski, adres MAC, oprogramowanie) na podstawie komend PowerShell zdefiniowanych w pliku konfiguracyjnym, a następnie wysyła je do Snipe-IT poprzez API. Agent działa w oparciu o prosty plik `config.json`, który pozwala łatwo rozszerzać zakres zbieranych informacji bez modyfikacji kodu. ## Funkcje - Integracja z API Snipe-IT - Dynamiczne zbieranie danych przez PowerShell - Obsługa custom fields - Wyszukiwanie assetu po serialu lub innym parametrze - Możliwość uruchamiania przez GPO / Scheduled Task - Działa bez dodatkowych zależności ## Struktura ``` PSITAgent/ ├── assets.ps1 ├── config.json └── README.md ``` ## Konfiguracja Plik `config.json` zawiera: - dane dostępowe do API Snipe-IT - sposób wyszukiwania assetu - definicje pól i komend PowerShell Przykład: ```json { "snipe-it": { "url": "https://your-snipeit/api/v1", "apikey": "API_KEY", "verify-ssl": false }, "search-term": { "type": "serial", "value": "(Get-CimInstance Win32_BIOS).SerialNumber" } } ``` ## Uruchomienie Ręczne: ```powershell powershell.exe -ExecutionPolicy Bypass -File .\assets.ps1 ``` ## Wdrożenie w domenie (GPO) 1. Umieść pliki w `\\domain\SysVol\domain\scripts\assets\` 2. Dodaj skrypt jako **Startup Script** w GPO: ``` Computer Configuration → Scripts → Startup ``` 3. Parametry: ``` -ExecutionPolicy Bypass ``` ## Wymagania - Windows 10 / 11 - PowerShell 5.1+ - Dostęp do API Snipe-IT ## Uwagi - Zalecane uruchamianie jako SYSTEM (GPO / Scheduled Task) - Możliwość rozszerzania poprzez dodanie nowych `ps_command` w configu - Skrypt może być dostosowany do pracy offline (lokalna kopia) ## Licencja Internal use / własny projekt