AI Governance: Rozszerzanie zasięgu za pomocą Jamf Extender
Czym jest AI Governance?
AI Governance zamyka lukę między „zezwoliliśmy na AI" a „możemy udowodnić, że jest poprawnie skonfigurowane w całej flocie". Oferowane w ramach Jamf for Mac, daje zespołom IT i bezpieczeństwa dwie zintegrowane możliwości: AI Visibility zapewnia niemal w czasie rzeczywistym inwentarz tego, jakie narzędzia AI są uruchomione, co robią i z czym się łączą. AI Policies przekłada kontrole korporacyjne każdego narzędzia AI na wybory w prostym języku i dostarcza je jako ustawienia zarządzane egzekwowane przez system operacyjny. Razem odpowiadają na trzy pytania, które zadają audytorzy i kierownictwo: co jest uruchomione, czy jest poprawnie skonfigurowane i czy można to udowodnić.
Dowiedz się więcej o AI Governance
Co dodaje Jamf Extender
Eksport zasad dla Windows: Pobieraj zasady AI governance jako gotowe do wdrożenia pakiety do przesłania do dowolnego rozwiązania MDM lub UEM, co ułatwia egzekwowanie konfiguracji narzędzi AI na punktach końcowych Windows obok floty macOS i mobilnej.
Widoczność statusu blokad w czasie rzeczywistym: Sprawdzaj w jednym rzucie oka, które narzędzia AI są już zablokowane przed wdrożeniem. Zielone wskaźniki statusu pokazują aktualny zasięg, pomagając uniknąć zbędnej pracy i natychmiast zrozumieć swoją postawę egzekwowania.
Usprawniony przepływ wdrażania: Wdrażaj Custom Prevent Lists (kontrola punktów końcowych) i blokady domen (kontrola sieci) do narzędzi bezpieczeństwa Jamf bezpośrednio z pulpitu AI Visibility, bez przełączania kontekstu między portalami czy ręcznego tworzenia list.
Automatyczne wykrywanie duplikatów: Rozszerzenie inteligentnie pomija identyfikatory podpisów i domeny, które są już zablokowane, zapewniając czyste podsumowanie wdrożenia i zapobiegając niepotrzebnym duplikatom.
Orkiestracja między portalami: Jamf Extender automatycznie kieruje wdrożenia do właściwych portali Jamf Cloud na podstawie konfiguracji Portal Group w Jamf Extender, eliminując ręczne wyszukiwania i błędy konfiguracji.
Spis treści
Kto zyskuje najwięcej:
Organizacje zarządzające wieloma środowiskami (produkcyjne, testowe, deweloperskie) lub takie, które często dostosowują zasady AI governance, docenią widoczność i szybkość wdrażania. Zespoły, które chcą potwierdzenia w czasie rzeczywistym swojej postawy egzekwowania w narzędziach bezpieczeństwa Jamf, uznają zintegrowane wskaźniki statusu za szczególnie wartościowe.
Przegląd
Ten przewodnik pokazuje, jak korzystać z Jamf Extender w ramach AI Governance w Jamf Account. Jamf Extender dodaje możliwości do pulpitu AI Visibility, umożliwiając podgląd użycia narzędzi AI oraz wdrażanie dodatkowych blokad na poziomie punktu końcowego i sieci dla zidentyfikowanych narzędzi AI w Twoim środowisku. Jamf Extender dodaje również opcję pobierania bezpośrednio w kreatorze AI Policies, pozwalając wyeksportować dowolną zasadę jako gotowy do wdrożenia pakiet dla punktów końcowych Windows, poprzez przesłanie do wybranego rozwiązania MDM lub UEM.
Co osiągniesz:
- Podgląd użycia narzędzi AI w Jamf Account AI Visibility
- Wdrożenie Custom Prevent Lists (Jamf Protect) i Custom Domain Blocks (Security Cloud)
- Weryfikacja i zarządzanie blokadami AI governance
- (Opcjonalnie) Wdrożenie konfiguracji zasad AI Governance na punktach końcowych Windows
Wymagany czas: 2–5 minut na wdrożenie
Wymagania wstępne
✅ Jamf Extender zainstalowany i skonfigurowany (patrz Konfiguracja Jamf Extender poniżej)
✅ Portal Groups skonfigurowane, łączące Jamf Pro z Protect i/lub Security Cloud
✅ Dostęp administratora do:
- Jamf Account AI Governance
- Instancji Jamf Protect (z uprawnieniami zapisu dla Custom Prevent Lists)
- Instancji Jamf Security Cloud (opcjonalnie, do blokowania domen)
Konfiguracja Jamf Extender
Przegląd
Ten przewodnik przeprowadzi Cię przez konfigurację Jamf Extender po instalacji, w tym konfigurację poświadczeń API oraz łączenie systemów Jamf za pomocą Portal Groups.
Co osiągniesz:
- Skonfigurujesz poświadczenia API dla Jamf Pro, Jamf Protect i Jamf Security Cloud
- Połączysz te systemy za pomocą Portal Groups
- Włączysz wyszukiwanie urządzeń i wdrożenia między platformami
Wymagany czas: 5–10 minut na wstępną konfigurację
Wymagania wstępne konfiguracji
✅ Jamf Extender zainstalowany w przeglądarce (Chrome, Safari, Edge lub Firefox)
✅ Dostęp administratora do:
- Instancji Jamf Pro
- Instancji Jamf Protect
- Instancji Jamf Security Cloud
✅ Wymagane uprawnienia:
- Jamf Pro: Możliwość tworzenia ról i klientów API
- Jamf Protect: Rola administratora (NIE tylko do odczytu) do tworzenia Custom Prevent Lists. Rolę można ograniczyć wyłącznie do zapisu Prevent Lists.
- Jamf Security Cloud: Poświadczenia administratora
Część A: Wstępna konfiguracja rozszerzenia
Po zainstalowaniu Jamf Extender zobaczysz:
- Pasek narzędzi przeglądarki: Ikona Jamf Extender (kliknij, aby otworzyć okienko)
- Strony Jamf Pro: Pigułka statusu pojawia się obok logo Jamf
- Pasek boczny Jamf Pro: Przycisk „Jamf Extender" nad „Resource Center"
Status początkowy: Pigułka statusu będzie pokazywać żółte „Configure Extension", dopóki nie skonfigurujesz poświadczeń.
Część B: Konfiguracja poświadczeń Jamf Pro
Masz dwie opcje: Szybka konfiguracja (zalecana) lub Konfiguracja ręczna.
Konfiguracja automatyczna (zalecana)
Konfiguracja automatyczna tworzy rolę i klienta API z odpowiednimi uprawnieniami.
- Przejdź do swojej instancji Jamf Pro i zaloguj się
- Kliknij Jamf Extender w menu po lewej stronie poniżej Settings
- Kliknij „Set Up Automatically" w sekcji Configuration
- Poczekaj na potwierdzenie (zwykle 5–10 sekund)
- Odśwież stronę internetową
- Gotowe! Pigułka statusu zmieni się na zielone „Extension Active"
Co robi konfiguracja automatyczna:
- Tworzy rolę API o nazwie „Jamf Extender"
- Przyznaje wszystkie wymagane uprawnienia odczytu (komputery, zasady, profile, grupy itd.)
- Przyznaje uprawnienia zapisu dla Categories i Packages (usuwanie nieużywanych)
- Tworzy klienta API przypisanego do tej roli
- Bezpiecznie przechowuje poświadczenia (Pęk kluczy macOS na komputerze Mac z zainstalowaną aplikacją Jamf Extender, w przeciwnym razie pamięć przeglądarki)
Rozwiązywanie problemów z szybką konfiguracją:
- ❌ „Failed to create API client" → Sprawdź, czy Twój użytkownik Jamf Pro ma uprawnienia do tworzenia ról/klientów API
- ❌ „Network error" → Sprawdź, czy jesteś zalogowany do Jamf Pro i czy strona w pełni się załadowała
Część C: Konfiguracja poświadczeń Jamf Protect
⚠️ KRYTYCZNE: Potrzebujesz klienta API Protect z MOŻLIWOŚCIĄ ZAPISU (nie tylko do odczytu), aby wdrażać Custom Prevent Lists.
Konfiguracja automatyczna (zalecana)
- Przejdź do swojej instancji Jamf Protect (np.
tenant.protect.jamfcloud.com) i zaloguj się - Kliknij ikonę Jamf Extender na pasku narzędzi przeglądarki
- Sekcja Jamf Protect pojawia się, pokazując wykrytą instancję w Configuration
- (Opcjonalnie) Zmień Client Name, jeśli chcesz
- Kliknij „Set Up Automatically"
- Skopiuj i zapisz Client ID oraz Password (pokazane raz) do menedżera haseł
⚠️ Ważne: Automatycznie utworzony klient ma domyślnie uprawnienia tylko do odczytu. Do wdrożeń AI Visibility potrzebujesz dostępu do zapisu.
Po utworzeniu początkowego klienta API powyżej:
Opcja A: Przyznanie pełnego dostępu administratora
- Przejdź do Administrative → API Clients i wybierz nowo utworzonego klienta API
- Kliknij Edit i dodaj rolę Full Admin za pomocą menu rozwijanego Roles
- (Opcjonalnie) Usuń rolę Read Only, klikając X na etykiecie
Opcja B: Dodanie odpowiednich uprawnień zapisu
- Przejdź do Administrative → Account → Roles i wybierz +Create Role
- Nazwij nowego klienta API (przykład: Prevent List Creation)
- Odznacz pole na górze kolumny Write, aby odznaczyć wszystkie uprawnienia
- Zaznacz pole dla Prevent Lists w kolumnie Write
- Przejdź do Administrative → API Clients i wybierz nowo utworzonego klienta API
- Kliknij Edit i dodaj nową ograniczoną rolę, którą utworzyłeś, za pomocą menu rozwijanego Roles
- (Opcjonalnie) Usuń rolę Read Only, klikając X na etykiecie
Co to robi:
- Tworzy klienta API poprzez GraphQL API Protect
- Wykorzystuje JWT Auth0 przechwycony z sesji przeglądarki
- Przechowuje poświadczenia dla każdego źródła (np.
protect_creds:https://overview.protect.jamfcloud.com)
Część D: Konfiguracja poświadczeń Jamf Security Cloud
Konfiguracja ręczna
W Security Cloud:
- Skopiuj wartość customerId z domeny — przykład: https://radar.wandera.com/dashboard?customerId=1a2s3d4f5g6h7j8k9l0
- Przejdź do Integrations → Risk API w menu po lewej stronie
- Kliknij Generate API key
- Nadaj kluczowi API nazwę
- Skopiuj i zapisz Application ID oraz Secret (pokazane raz) do menedżera haseł
W Jamf Extender
- Kliknij ikonę paska narzędzi Jamf Extender
- W sekcji Configuration rozwiń sekcję Manual
- Wybierz Add new... w pierwszym menu rozwijanym w Portals
- Wybierz Security Cloud w Type
- Wklej swój customerId do pola Customer ID
- Wklej swój Application ID do pola Client ID
- Wklej swój Application Secret do pola Client Secret
- Wprowadź Admin Email i Password, których używasz do logowania do Security Cloud
Część E: Tworzenie Portal Groups (łączenie systemów)
Portal Groups łączą Twoją instancję Jamf Pro z Protect i/lub Security Cloud, umożliwiając wyszukiwanie urządzeń i wdrożenia między platformami.
Utwórz Portal Group
- Kliknij ikonę paska narzędzi Jamf Extender
- Przewiń do sekcji „Portal Groups"
- Kliknij „Add Group"
- Skonfiguruj:
- Group Name: Opisowa nazwa (np. „Production" lub „Dev Environment")
- Jamf Pro Instance: Wybierz z menu rozwijanego (musi być najpierw skonfigurowana)
- Security Cloud Customer ID: (Opcjonalnie) Wybierz, jeśli wdrażasz blokady domen
- Jamf Protect Instance: (Opcjonalnie) Wybierz, jeśli wdrażasz Prevent Lists
- ⚠️ Wymagany jest jeden Protect lub Security Cloud dla Portal Group
- Kliknij „Add Group"
Przykładowa Portal Group:
Name: Production Environment
Jamf Pro: https://myorg.jamfcloud.com
Security Cloud: Customer ID 12345
Jamf Protect: https://overview.protect.jamfcloud.com
Dlaczego Portal Groups mają znaczenie:
- Rozszerzenie automatycznie wykrywa, do której instancji Protect/Security Cloud wdrażać
- Strony szczegółów urządzenia w Jamf Pro pokazują dane między platformami (podatności, zagrożenia itd.)
- Wdrożenia AI Visibility są automatycznie kierowane do właściwych systemów
Część 1: Pulpit AI Visibility i wdrażanie
Teraz najciekawsza część! Wdróż blokady AI governance z poziomu Jamf Account.
Dostęp do AI Visibility
- Przejdź do Jamf Account:
account.jamf.com - Zaloguj się swoimi poświadczeniami Jamf
- Przejdź do: AI Governance → AI Visibility
- Wybierz swoje środowisko (jeśli zarządzasz wieloma)
Co zobaczysz:
- Licznik „N unique products in use"
- Karty produktów dla każdego wykrytego narzędzia AI (np. Claude, Cursor, ChatGPT)
- Każda karta pokazuje:
- Nazwę produktu i bundle ID
- Launchers (identyfikatory podpisów dla głównej aplikacji)
- Commands (identyfikatory podpisów dla procesów pomocniczych)
- Liczbę zdarzeń w wybranym oknie czasowym

Zrozumienie wskaźników statusu blokad
Jamf Extender wstrzykuje wskaźniki statusu w czasie rzeczywistym, pokazując, co jest już zablokowane:
Przed kliknięciem czegokolwiek szukaj:
- Zielona pigułka obok produktów: „✓ Block Configured in Protect"
- Zielona pigułka obok procesów: „✓ Block Configured"
- Pigułka podsumowania w nagłówku:
- „✓ All prevent lists configured (N)" — Wszystko jest zablokowane
- „N of M signing IDs blocked in Protect" — Częściowy zasięg
Wskaźniki te pojawiają się automatycznie — nie jest wymagana żadna konfiguracja. Sprawdzają Twoją instancję Protect w czasie rzeczywistym. Ich pojawienie się przy pierwszym ładowaniu może zająć chwilę.
Wdrażanie blokad (wszystkie produkty)

Aby zablokować wszystkie narzędzia AI wykryte na stronie:
Kliknij przycisk „Configure Additional Blocks"
- Znajduje się na LEWO od licznika „N unique products in use"
- Obejmuje WSZYSTKIE produkty na stronie
Sprawdzenie poświadczeń (dzieje się automatycznie):
- Rozszerzenie ustala Twoją instancję Protect na podstawie UUID środowiska
- Sprawdza, czy poświadczenia mają możliwość zapisu (nie tylko do odczytu)
- Jeśli tylko do odczytu: Pokazuje błąd z instrukcjami konfiguracji
- Jeśli gotowe: Otwiera okno wdrażania
Wybierz, co zablokować:
Custom Prevent Lists:
- Produkty są pogrupowane z polami wyboru
- Każdy produkt ma:
- ☐ Pole wyboru bundle ID produktu (np.
com.anthropic.claudefordesktop) - ☐ Jedno pole wyboru na identyfikator podpisu launcher/command ✅ Kluczowe punkty:
- ☐ Pole wyboru bundle ID produktu (np.
- Zaznaczenie pól wyboru nagłówka zaznaczy wszystkie pola podrzędne
- Pola podrzędne są NIEZALEŻNE
- Domyślnie nic nie jest zaznaczone
- Już zablokowane identyfikatory pokazują zieloną plakietkę „Already blocked"
Custom Domain Blocks:
- (Jeśli Security Cloud jest skonfigurowane w Portal Group)
- Każdy produkt pokazuje swoje znane domeny
- Zaznacz domeny do zablokowania (np.
claude.ai,claude.com) - Blokady domen dotyczą punktów końcowych macOS, iOS, iPadOS, VisionOS, Android i Windows
Kliknij „Deploy"
Wyniki:
- Licznik sukcesu: „Created N Prevent Lists, Skipped M duplicates"
- Wszelkie już istniejące wpisy są automatycznie pomijane
- Prevent Lists są natychmiast aktywne we wszystkich wdrożonych Plans
Na ostatnim ekranie będą dostępne przyciski umożliwiające bezpośrednie przejście do Protect lub Security Cloud w celu zobaczenia dodanych blokad
Wdrażanie blokad (pojedynczy produkt)
Aby zablokować tylko jedno narzędzie AI:
- Znajdź kartę produktu (np. „Claude")
- Kliknij link „Block {Product}"
- Znajduje się w grupie kontrolek karty (obok wyboru zakresu dni)
- Postępuj zgodnie z tym samym przepływem wdrażania co powyżej (ograniczonym tylko do tego produktu)
Na ostatnim ekranie będą dostępne przyciski umożliwiające bezpośrednie przejście do Protect lub Security Cloud w celu zobaczenia dodanych blokad
Weryfikacja wdrożenia
W Jamf Protect:
- Przejdź do: Configuration → Prevent Lists
- Poszukaj nowych wpisów o nazwach takich jak:
- „Block AI Tool: com.anthropic.claudefordesktop"
- „Block AI Tool: com.openai.chatgpt.atlas"
- Każdy ma:
- Type: Custom Prevent List
W Jamf Security Cloud:
- Przejdź do: Policies → Content filtering policy → Custom rules
- Poszukaj nowych niestandardowych blokad domen
- Sprawdź, czy domeny są wymienione i przypisane do grup, do których mają być przypisane
Z powrotem w AI Visibility:
- Odśwież stronę
- Zielone plakietki „✓ Block Configured" powinny pojawić się obok wdrożonych elementów
Najlepsze praktyki
1. Używaj opisowych nazw Portal Group
Dobre nazwy: „Production", „Dev - US East", „QA Environment"
Złe nazwy: „Test", „Group 1", „asdf"
Dlaczego: Będziesz mieć wiele Portal Groups, jeśli zarządzasz wieloma środowiskami.
2. Monitoruj skuteczność Prevent List
Po wdrożeniu:
- W Jamf Protect: Alerts → View All
- Filtruj według: blokad Prevent List
- Sprawdź, czy narzędzia AI są faktycznie blokowane
Dlaczego: Potwierdza, że Twoje wdrożenie działa w produkcji.
3. Zezwalanie na wyjątki
Aby zezwolić na konkretne narzędzie AI (np. Claude dla programistów):
Opcja 1 — Nie wdrażaj jego blokad:
- Po prostu nie zaznaczaj jego pól podczas wdrażania
- Inne narzędzia zostaną zablokowane, to pozostanie otwarte
Opcja 2 — Usuń Prevent Lists:
- W Jamf Protect: Configuration → Prevent Lists
- Znajdź listę „Block AI Tool: com.anthropic.claudefordesktop"
- Usuń ją
- Narzędzie jest teraz dozwolone
- W Jamf Security Cloud → Policies → Content filtering policy → Custom rules
- Usuń wszelkie reguły, które nie są już potrzebne
Część 2: Wdrażanie zasad AI dla Windows (opcjonalnie)
Poza blokowaniem narzędzi AI na poziomie sieci i procesów, możesz również wdrażać konfiguracje zasad bezpośrednio do aplikacji AI na punktach końcowych Windows. Jest to szczególnie przydatne dla organizacji, które muszą:
- Konfigurować narzędzia AI z ustawieniami zatwierdzonymi przez organizację (np. zatwierdzone modele, punkty końcowe API, flagi funkcji)
- Egzekwować spójne konfiguracje we flotach Windows za pomocą MDM
- Wdrażać Claude Code lub Claude Desktop z zarządzanymi ustawieniami

Co jest wdrażane
Jamf Extender generuje pakiety wdrożeniowe Windows, które zapisują konfiguracje zasad w Rejestrze Windows:

Claude Code:
- Ścieżka rejestru:
HKLM\SOFTWARE\Policies\ClaudeCode\Settings - Format: Pojedynczy skompresowany ciąg JSON zawierający wszystkie ustawienia
- Wdrażany przez: skrypt PowerShell, który waliduje i zapisuje wartość rejestru
Claude Desktop (Claude Cowork):
- Ścieżka rejestru:
HKLM\SOFTWARE\Policies\Claude - Format: Jedna wartość rejestru na klucz ustawienia (np.
model,temperature) - Wdrażany przez: skrypt PowerShell, który zapisuje pojedyncze wartości ciągów
Eksport zasady dla Windows
Przejdź do AI Policies:
- Przejdź do: AI Governance → AI Policies w Jamf Account
- Znajdź zasadę, którą chcesz wdrożyć na Windows
Eksport pojedynczej zasady:
- Kliknij menu trzykropkowe (⋯) obok zasady
- Wybierz „Export for Windows"
- Przeglądarka pobiera plik ZIP o nazwie takiej jak:
claude-code-windows-deploy.zip
Lub eksport wszystkich zasad (zbiorczo):
- Kliknij „Download Policies for Windows" na pasku narzędzi
- Przeglądarka pobiera:
ai-policies-windows-deploy.zip - Zawiera oddzielne foldery wdrożeniowe dla każdej zasady
Zrozumienie struktury pakietu
Każdy eksport zasady zawiera:
claude-code-windows-deploy/
├── Deploy-ClaudeCode-Registry.ps1 # Device-side registry writer
├── intune/
│ ├── Provision-ClaudeCode-Intune.ps1 # Admin provisioner (PowerShell)
│ └── provision_claudecode_intune.py # Admin provisioner (Python/MSAL)
├── metadata.json # Source policy details
└── README.txt # Setup instructions
W przypadku zasad Claude Desktop zobaczysz również:
settings/settings.json # Reference copy of settings
W przypadku eksportów zbiorczych:
ai-policies-windows-deploy/
├── policy-1/ # One folder per policy
│ ├── Deploy-ClaudeCode-Registry.ps1
│ └── intune/...
├── policy-2/
│ ├── Deploy-ClaudeDesktop-Registry.ps1
│ └── intune/...
├── all-policy-import/
│ ├── Import-All-AIPolicies-Intune.ps1 # Multi-policy provisioner
│ └── import_all_aipolicies_intune.py # Multi-policy provisioner
└── metadata.json # Index of all policies
Opcja wdrażania 1: Dowolny MDM (ręczne uruchamianie skryptu)
Skrypty po stronie urządzenia (Deploy-*.ps1) działają z dowolnym MDM, który potrafi uruchamiać skrypty PowerShell.
Kroki:
- Wypakuj pakiet ZIP
- Przejrzyj
Deploy-ClaudeCode-Registry.ps1lubDeploy-ClaudeDesktop-Registry.ps1 - Prześlij skrypt do swojego MDM (Intune, Workspace ONE itd.)
- Przypisz do grup urządzeń Windows
- Skrypt uruchamia się jako SYSTEM i zapisuje do rejestru
Co robi skrypt:
- Osadza JSON zasady bezpośrednio w skrypcie
- Waliduje składnię JSON za pomocą
ConvertFrom-Json(natychmiast zgłasza błędy) - Tworzy klucz rejestru, jeśli nie istnieje
- Zapisuje ustawienia do odpowiedniej ścieżki rejestru
- Kończy z kodem 0 (sukces) lub 1 (niepowodzenie)
Obsługiwane narzędzia MDM:
- Microsoft Intune (Platform Scripts)
- VMware Workspace ONE (Scripts & Sensors)
- Dowolny MDM, który potrafi uruchamiać PowerShell w kontekście SYSTEM
Opcja wdrażania 2: Microsoft Intune (automatyczne provisionowanie)
Provisionery Intune automatyzują proces przesyłania skryptów do Microsoft Intune poprzez Microsoft Graph API.
Wybierz swój provisioner:
Provisioner PowerShell (Provision-*-Intune.ps1)
Wymagania wstępne:
- Komputer z systemem Windows z PowerShell 5.1+
- Zainstalowany moduł PowerShell Microsoft.Graph:
Install-Module Microsoft.Graph - Rola Entra ID Global Administrator lub Intune Administrator
Kroki:
- Wypakuj pakiet ZIP
- Przejdź do:
intune/ - Kliknij prawym przyciskiem
Provision-ClaudeCode-Intune.ps1→ Run with PowerShell - Przejrzyj monit potwierdzenia pokazujący:
- Nazwę i wersję zasady
- Wymagane uprawnienia Intune
- Co zostanie utworzone w Intune
- Wpisz
Y, aby potwierdzić - Przeglądarka otwiera się do interaktywnego logowania Microsoft (obsługuje MFA)
- Skrypt uwierzytelnia się i przesyła skrypt po stronie urządzenia do Intune
- Skrypt wypisuje: ID skryptu Intune Platform Script i potwierdzenie sukcesu
Kolejne kroki w portalu Intune:
- Przejdź do: Devices → Scripts and remediations → Platform scripts
- Znajdź nowo utworzony skrypt (np. „Claude Code Policy v1")
- Kliknij Assignments → Dodaj grupy urządzeń
- Urządzenia w tych grupach otrzymają zasadę przy następnym sprawdzeniu
Provisioner Python/MSAL (provision_*_intune.py)
Dlaczego używać Pythona?
- Działa na Windows, macOS lub Linux
- Nie wymaga rejestracji aplikacji
- Wykorzystuje przepływ OAuth device-code (oparty na przeglądarce, działa z MFA)
- Brak sekretów do zarządzania
Wymagania wstępne:
pip install msal requests
Kroki:
- Wypakuj pakiet ZIP
- Przejdź do:
intune/ - Uruchom:
python provision_claudecode_intune.py - Przejrzyj monit potwierdzenia
- Wpisz
yes, aby potwierdzić - Skrypt wypisuje: „Go to https://microsoft.com/devicelogin and enter code: XXXXXX"
- Otwórz przeglądarkę, wprowadź kod, zaloguj się kontem administratora Intune
- Skrypt kończy przesyłanie
- Przypisz do grup urządzeń w portalu Intune (tak samo jak w przepływie PowerShell)
Zalety:
- Wieloplatformowość (nie wymaga Windows)
- Zero nakładu na rejestrację aplikacji
- Uwierzytelnianie oparte na przeglądarce (znajomy przepływ MFA)
- Wyłącznie zależności open-source
Zbiorcze wdrażanie zasad (wiele zasad naraz)
Dla organizacji zarządzających wieloma zasadami AI:
Korzystanie z provisionera wszystkich zasad:
- Wypakuj
ai-policies-windows-deploy.zip - Przejdź do:
all-policy-import/ - Uruchom jeden z:
- PowerShell:
Import-All-AIPolicies-Intune.ps1 - Python:
python import_all_aipolicies_intune.py
- PowerShell:
- Pojedynczy przepływ uwierzytelniania przesyła wszystkie zasady
- Każda zasada staje się osobnym Intune Platform Script
Wynik:
- Wiele skryptów Intune utworzonych w jednym uruchomieniu
- Każdy skrypt można przypisać do różnych grup urządzeń
- Przydatne do wdrażania różnych konfiguracji dla różnych zespołów (np. inżynieria vs. marketing)
Weryfikacja wdrożenia Windows
Na urządzeniu testowym:
- Otwórz Edytor rejestru (
regedit.exe) - Przejdź do:
- Claude Code:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\ClaudeCode - Claude Desktop:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Claude
- Claude Code:
- Sprawdź, czy wartości rejestru istnieją
Dla Claude Code:
- Poszukaj wartości o nazwie
Settings(REG_SZ) - Wartość zawiera skompresowany JSON (bez nowych linii)
Dla Claude Desktop:
- Wiele wartości, jedna na klucz ustawienia
- Każda wartość jest ciągiem (nawet dla wartości logicznych/liczbowych)
- Uruchom aplikację (Claude Code lub Claude Desktop)
- Sprawdź, czy ustawienia są egzekwowane (np. wybór modelu, punkty końcowe API)
Rozwiązywanie problemów:
- Jeśli brakuje wartości rejestru: Sprawdź dzienniki uruchamiania skryptu MDM
- Jeśli aplikacja ignoruje ustawienia: Upewnij się, że wersja aplikacji obsługuje zarządzane ustawienia rejestru
- Jeśli skrypt zawiedzie: Sprawdź
metadata.jsonpod kątem błędów walidacji
Walidacja schematu (tylko Claude Code)
Zasady Claude Code są walidowane względem oficjalnego schematu JSON przed wdrożeniem:
Walidacja odbywa się:
- W czasie eksportu (w Jamf Extender)
- W czasie uruchamiania skryptu (PowerShell po stronie urządzenia waliduje składnię JSON)
Co jest walidowane:
- Niezgodności typów (np. ciąg tam, gdzie oczekiwana jest wartość logiczna)
- Nieprawidłowe wartości enum (np. nieobsługiwane nazwy modeli)
- Nieznane klucze konfiguracji
- Nazewnictwo zmiennych środowiskowych (musi być wielkimi literami, alfanumeryczne + podkreślenia)
Błędy są pokazywane:
- W przeglądarce podczas eksportu (blokuje pobieranie w przypadku błędów krytycznych)
- W
README.txtpo eksporcie (tylko ostrzeżenia) - W danych wyjściowych skryptu PowerShell (niepowodzenia parsowania JSON)
Claude Desktop:
- Brak opublikowanego schematu (wdrażany bez zmian)
- Administratorzy odpowiadają za walidację ustawień względem dokumentacji Claude Desktop
Najlepsze praktyki wdrażania Windows
1. Testuj przed produkcją
- Wdróż najpierw do pilotażowej grupy urządzeń
- Sprawdź, czy wartości rejestru są zapisywane poprawnie
- Przetestuj zachowanie aplikacji z zarządzanymi ustawieniami
2. Wersjonuj swoje zasady
- Wersja zasady jest osadzona w nazwie skryptu Intune (np. „Claude Code Policy v2")
- Aktualizacja zasady tworzy nową wersję
- Stare wersje pozostają w Intune, chyba że zostaną ręcznie usunięte
3. Używaj opisowych nazw zasad
- Dobrze: „Claude Code - Engineering Team - GPT-4 Only"
- Źle: „Policy 1", „Test", „asdf"
- Nazwa zasady pojawia się na liście Intune Platform Script
4. Zabezpiecz poświadczenia
- Provisionery Intune używają uwierzytelniania interaktywnego (brak osadzonych poświadczeń)
- Skrypty po stronie urządzenia zawierają wyłącznie JSON zasady (brak sekretów)
- Nigdy nie umieszczaj wypakowanych pakietów w systemie kontroli wersji, jeśli zawierają wrażliwe ustawienia
5. Przejrzyj przed wdrożeniem
- Zawsze sprawdzaj
README.txtw pakiecie - Przejrzyj błędy/ostrzeżenia walidacji w metadanych
- Przetestuj składnię skryptu PowerShell na maszynie deweloperskiej przed przesłaniem do MDM
Ograniczenia wdrażania Windows
Czego to NIE robi:
- Nie instaluje Claude Code ani Claude Desktop (wymaga osobnego wdrożenia)
- Nie blokuje narzędzi AI na poziomie procesu (do tego użyj Jamf Protect)
- Nie działa na macOS (użyj profili MDM macOS lub ustawień opartych na plikach)
- Nie wdraża na punktach końcowych Linux
Tylko rejestr:
- Ustawienia oparte na plikach (np.
settings.jsonw katalogach aplikacji) NIE są zapisywane - Aplikacje muszą odczytywać z lokalizacji zasad w rejestrze
- Sprawdź, czy wersja Twojej aplikacji obsługuje zarządzane ustawienia oparte na rejestrze
Wsparcie i opinie
- GitHub Issues: https://github.com/Jamf-Concepts/Jamf-Extender/issues
- Dokumentacja: https://github.com/Jamf-Concepts/Jamf-Extender
- Pytania: Zgłoś problem z etykietą „question"
Jeśli odkryjesz identyfikatory podpisów dla nieznanych narzędzi:
- Uruchom:
codesign -dv /Applications/YourApp.app - Zapisz: Bundle ID, Team ID, domeny
- Zgłoś problem na GitHub z dołączonym raportem walidacji
Twój wkład pomaga całej społeczności Jamf!