AutoPilot (Cloud Only) deployment profil konfigurálásánál lehetőség van Device name template megadására is, melyet az alábbiak szerint végezhetünk el:

Sajnos, a Hybrid Autpilot enrollment során ez a funkció nem elérhető:

Ebben az esetben a domain-join konfigurációs template-ben kell megadni a névsablont, amely viszont nem támogatja a %SERIAL% makrót:

Azt gondolná az ember, hogy “semmi gond, írjunk egy remediation scriptet, majd azzal átnevezzük a klienst..” Ez viszont nem fog működni: “Permission denied” üzenetet fogunk kapni:

Ennek az az oka, hogy a remediation script domainba léptetés után nem rendelkezik az Organizational Unit-on a megfelelő jogokkal.
Mit lehet akkor tenni?
Két opciónk van:
A:
Átnevezzük a gépet a Domainbe léptetés előtt, így nem kell a jogosultságokkal bajlódni, ez viszont nem minden esetre jó. Ha éppen Intune-ba migráljuk a már felhasználóknál lévő gépeket, akkor ez a megközelítés ezekre a gépekre nem lesz alkalmazható. Kizárólag Autopilot ESP alatt tud lefutni a script, még reboot előtt, mielőtt a Domain join megtörténik.
Ha neked ez elég, akkor ajánlom Shehab Noaman cikkét: LINK
Noaman megoldásához szükséged lesz pár PowerShell scriptre, amiket Win32 app-ba kell csomagolnod, ez az app egy scheduled taskon keresztül fogja a gépek átnevezését elvégezni.
B:
Abban az esetben, ha nem csak a frissen telepített gépeket szeretnéd átnevezni, hanem már a domain tagokat is, akkor picit bonyolódik a feladat. Ebben a cikkben ezt fogom bemutatni.
Valójában a B opciót is két részre lehet bontani.
B1: Remote Server Administration Tools (RSAT) használatával a kliensek képesek a tartományban lévő adataik módosítására. Ebben a cikkben nem térek ki erre, mert nem szeretnék külön PowerShell modult telepíteni a gépekre, amivel a kliens hozzáférne az AD-hoz.
B2: Group Managed Service Account (gMSA) használatával explicit módon meghatározhatjuk a szükséges jogosultságokat, jelszó használata nélkül tudunk hitelesíteni a tartományvezérlőn, és nincs szükségünk további PowerShell-modulokat telepíteni.
Eszközök átnevezése Group Managed Service Account (gMSA) használatával
Kezdjük ott, hogy mi is az a gMSA account?!
Az sMSA (standalone Managed Service Account) egy olyan tartományi fiók, amely automatikus jelszókezelést és SPN (Service Principal Name) adminisztrációt biztosít egyetlen gépen futó szolgáltatásokhoz.
A gMSA (group Managed Service Account) ugyanezt a funkciót kínálja, de több szerverre kiterjesztve, így minden példány ugyanazt a szolgáltatásfiókot használhatja. A jelszavakat automatikusan a Windows kezeli, nem kell manuálisan cserélni (30 naponta cserélődik a jelszó alapból). A Microsoft Key Distribution Service gondoskodik arról, hogy a domainvezérlők generálják és biztosítsák a gMSA aktuális jelszavát a jogosult gépeknek. Bővebben a gMSA-ról :MS cikk
Nézzük mire van szükségünk pontosan.
Domain Controller:
1. gMSA account
2. Security group, amelynek a tagjai jogosultak a gMSA jelszavát lekérdezni
3. megfelelő jogosultság a gMSA account számára a klienseket tartalmazó OU-ra
4. GPO amivel a klienseken létrehozzuk a szükséges komponenseket.
5. Share, ahova a logokat tudjuk gyűjteni ami az automatikus csoport kezeléséhez kell* (opcionális)
Kliensek:
1. “Log on as a batch job” a gMSA account számára
2. Administrator jogosultság a gMSA account-nak a klienseken
3. Scheduled Task, melyet a gMSA account nevében futtatunk
4. PowerShell script, amelyet a Scheduled Task indít
Active Directory Konfiguráció
Az egyszerűség kedvéért írtam 2 PowerShell scriptet amivel a fentieket létre tudjuk hozni. A least privilege (PoLP) szabályt követve a folyamat a gép átnevezése után, visszavon minden jogosultságot!
A következő scriptet a Domain Controller-en kell futtatni, a script-ben kommenteltem minden lépést:
gMSA fiók és jogosultságok beállítása PowerShell-el:
# ===============================
# Paraméterek
# ===============================
$gmsaName = "svc_gMSA"
$dnsHostName = "contoso.com"
$groupName = "gMSA_Gepek"
$targetOU = "OU=Hybrid,OU=CORP,DC=corp,DC=contoso,DC=com" ## OU DistinguishedName
# ===============================
# 1. KDS Root Key ellenőrzése / létrehozása
# ===============================
if (-not (Get-KdsRootKey)) {
Write-Host "KDS root kulcs nem található. Létrehozás..." -ForegroundColor Yellow
Add-KdsRootKey -EffectiveImmediately
Start-Sleep -Seconds 10
# ===============================
# A KDS kulcs létrejötte után rövid szünetet tartunk, hogy biztosan elérhető legyen minden domain controller számára.
# ===============================
Write-Host "KDS root kulcs létrehozva." -ForegroundColor Green
} else {
Write-Host "KDS root kulcs már létezik." -ForegroundColor Green
}
# ===============================
# 2. Security group létrehozása (ha nem létezik)
# ===============================
if (-not (Get-ADGroup -Filter { Name -eq $groupName } -ErrorAction SilentlyContinue)) {
# ===============================
# Ha a megadott nevű csoport még nem létezik, létrehozzuk, hogy ebben gyűjthessük a gMSA használatára jogosult gépeket.
# ===============================
New-ADGroup -Name $groupName -GroupScope Global -GroupCategory Security
Write-Host "Security group '$groupName' létrehozva." -ForegroundColor Green
} else {
Write-Host "Security group '$groupName' már létezik." -ForegroundColor Cyan
}
# ===============================
# 3. gMSA fiók létrehozása (ha nem létezik)
# ===============================
if (-not (Get-ADServiceAccount -Identity $gmsaName -ErrorAction SilentlyContinue)) {
New-ADServiceAccount -Name $gmsaName `
-DNSHostName $dnsHostName `
-PrincipalsAllowedToRetrieveManagedPassword $groupName `
-Enabled $true
# ===============================
# A PrincipalsAllowedToRetrieveManagedPassword paraméterrel megadott csoport tagjai (gépek) jogosultak lesznek használni a gMSA fiókot.
# ===============================
Write-Host "gMSA fiók '$gmsaName' létrehozva." -ForegroundColor Green
} else {
Write-Host "gMSA fiók '$gmsaName' már létezik." -ForegroundColor Cyan
}
# ===============================
# 4. Jogosultság delegálása az OU-ra
# ===============================
$netbiosName = "corp"
try {
$ou = [ADSI]"LDAP://$targetOU"
# ===============================
# Identity helyes formátumban: NETBIOS domain név + fióknév
# ===============================
$identity = "$netbiosName\$gmsaName$"
$acl = $ou.psbase.ObjectSecurity
# ===============================
# Meglévő jogok: Validated write to DNS és SPN, valamint attribútummódosítás
# ===============================
$rights = @(
[System.DirectoryServices.ActiveDirectoryRights]::ExtendedRight,
[System.DirectoryServices.ActiveDirectoryRights]::ExtendedRight,
[System.DirectoryServices.ActiveDirectoryRights]::WriteProperty
)
$extendedRights = @(
"Validated write to DNS host name",
"Validated write to service principal name",
"Write all properties of computer objects"
)
# ===============================
# Végigmegyünk a rights listán, és minden jogosultságot hozzáadunk az OU-hoz a gMSA nevében.
# ===============================
for ($i = 0; $i -lt $rights.Count; $i++) {
try {
# ===============================
# NTAccount példányosítás külön, hogy elkapjuk a hibát, ha az identity nem létezik, vagy hibás a formázása.
# ===============================
$ntAccount = New-Object System.Security.Principal.NTAccount($identity)
}
catch {
throw "A megadott identity '$identity' nem található vagy formázása hibás. $_"
}
# ===============================
# ACE létrehozás helyesen
# ===============================
$ace = New-Object System.DirectoryServices.ActiveDirectoryAccessRule (
$ntAccount,
$rights[$i],
[System.Security.AccessControl.AccessControlType]::Allow, # Helyes enum
[Guid]::Empty,
[System.DirectoryServices.ActiveDirectorySecurityInheritance]::All
)
$acl.AddAccessRule($ace)
}
$ou.psbase.CommitChanges()
Write-Host "Jogosultságok delegálva az '$targetOU' OU-ra ($identity): DNS write, SPN write és attribútum módosítás." -ForegroundColor Green
}
catch {
Write-Host "Jogosultságdelegálás nem sikerült: $_" -ForegroundColor Red
}
Fontos, hogy a KDS root key létrehozása után (1.blokk) várj amíg elérhető lesz a kulcs.
Miután sikeresen futott a teljes script, a Managed Service Accounts OU-ban fogjuk találni a gMSA accountot. Illetve a Users container-ben a security csoportot.

Az svc_gMSA account jogait tudod ellenőrizni a klienseket tartalmazó OU-n. (OU-> Properties -> Security -> Advanced)

Ha szeretnéd, még tudod szűkíteni a “Special” access alatt lévő jogosultságokat.
Mielőtt a GPO konfigurációt megkezdjük, adjunk hozzá pár gépet az imént létrehozott gMSA_Gepek security group-hoz. Kizárólag azok a kliensek tudják az svc_gMSA account jelszavát lekérni, akik ennek a csoportnak a tagjai!
Miután a klienseket hozzáadtuk a csoporthoz, szükséges egy reboot a kliens-en, így megkapják a jogosultságot az svc_gMSA account-hoz.
Egyenlőre a csoport tagokat manuálisan kezeljük, de a cikk végén kitérek egy lehetséges automatizációra.
Group Policy létrehozása
1. Hozzunk létre egy GPO-t, a Group Policy Management consolon.
2. Adjunk az svc_gMSA fióknak “Log on a batch job” jogosultságot:
“Computer Configuration -> Policies -> Windows Settings -> Security Settings -> Local Policies -> User Rights Assignments -> Log on as a batch job”

Az svc usert csak akkor tudjuk tallózni, ha a “Service Account”-okat is felvesszük a keresési objektumok közé:

3. Állítsunk be egy “Logon script”-et:
“Computer Configuration -> Policies -> Windows Settings -> Scripts (Startup/Shutdown) -> Startup”

A “Startup Properties” ablakon nyissuk meg a “PowerShell Scripts” tab-ot, majd “Add” gombra kattintva tallózzuk a scriptet, amit a klienseken fogunk futtatni.

A startup scriptet a “\\domain\sysvol\domain\{GPO GUID}\machine\scripts\startup”
mappába kell bemásolni. A gpo guid-ot GPO objectumra kattintva a “Details” tab-on találod:

Nézzük a scriptet amit futtatni fogunk Logon scriptként a GPO-val.
Mit csinál pontosan a script?
- Paramétereket kezel
- Log funkciót tartalmaz, minden eseményt időbélyeggel naplóz egy .txt fájlba.
- Lekérdezi a gép sorozatszámát, és abból képez új gépnevet: IC-<SerialNumber>.
- Ellenőrzi, hogy a szükséges könyvtár létezik-e, ha nem, létrehozza.
- Ha a gép neve már helyes:
- Eltávolítja a gMSA-t a “Local Administrators” csoportból.
- Eltávolítja a Scheduled Task-ot.
- Átmásolja a log fájlt a hálózati megosztásra, ha még nincs ott. (Erre is mindjárt kitérek!)
- Ha még nem megfelelő a gépnév:
- Létrehozza a rename_computer.ps1 segédscriptet, amelyet a Scheduled Task fog futtatni.
- Rename_Computer.ps1 script:
- Átnevezi a gépet. (Max 15 karakter lehet a NetBios name, így a prefix megadásakor ezzel számolj!)
- Archiválja az esetleges meglévő logfájlt a megosztáson.
- Logol minden lépést.
- Létrehozza a rename_computer.ps1 segédscriptet, amelyet a Scheduled Task fog futtatni.
- Hozzáadja a gMSA-t az admin csoporthoz, ha még nincs benne.
- Létrehozza a Scheduled Task-ot:
- Beállítja, hogy a gMSA fiók futtassa a rename_computer.ps1 scriptet bejelentkezéskor.
- Azonnal elindítja a Scheduled Task-ot. Ezt a részt opcionálisan hagytam a script-ben, mivel bootoláskor ha fut a script, az első user login-nál nem fog tudni a felhasználó belépni, mivel a gép neve a kliensen még nem válltozott meg de a DC-n már igen, ilyenkor kell egy reboot a kliens-re és ez megoldja a “problémát!”
# svc_gMSA_client.ps1
# -------------------------------------------------------------
# Ez a szkript összeállítja és regisztrálja a gép átnevezéséhez
# szükséges PowerShell szkriptet és Scheduled Task-ot, amelyet
# egy gMSA fiók hajt végre. A folyamat naplózásra kerül lokálisan
# és opcionálisan egy hálózati megosztásra is mentésre kerül.
# -------------------------------------------------------------
# ===============================
# Paraméterek
# ===============================
param(
[string]$UserID = 'corp\svc_gMSA$',
[string]$ScriptFolder = 'C:\scripts',
[string]$RemoteLogShare = '\\dc1\share'
)
# ===============================
# Log funkció definíciója
# ===============================
function Write-Log {
param([string]$Message)
$timestamp = Get-Date -Format 'yyyy-MM-dd HH:mm:ss'
$LogFile = Join-Path $ScriptFolder $newNameFile
"$timestamp $Message" | Out-File -FilePath $LogFile -Encoding UTF8 -Append
}
$ErrorActionPreference = 'Continue'
# ===============================
# Gépnév meghatározása és összehasonlítás
# ===============================
$serial = (Get-CimInstance Win32_BIOS).SerialNumber
$newName = ("IC-$serial").Substring(0, [Math]::Min(15, ("IC-$serial").Length))
$newNameFile = "$newName.txt"
$currentName = $env:COMPUTERNAME
# ===============================
# Script mappa létrehozása, ha nem létezik
# ===============================
if (-not (Test-Path $ScriptFolder)) {
try {
New-Item -Path $ScriptFolder -ItemType Directory -Force | Out-Null
Write-Log "Folder '$ScriptFolder' created."
}
catch {
Write-Log "Failed to create folder '$ScriptFolder': $_"
}
}
# ===============================
# Ha a gép neve már megfelelő, takarítás
# ===============================
if ($currentName -eq $newName) {
Write-Log "Name OK: $currentName"
# ===============================
# GMSA eltávolítása a local admin group-ból, ha benne van
# ===============================
if (Get-LocalGroupMember Administrators -ErrorAction SilentlyContinue | Where Name -EQ $UserID) {
try {
Remove-LocalGroupMember -Group Administrators -Member $UserID -ErrorAction Stop
Write-Log "Removed svc_gMSA from Administrators."
} catch {
Write-Log "Failed to remove svc_gMSA: $_"
}
} else {
Write-Log "svc_gMSA not in Administrators."
}
# ===============================
# Scheduled Task eltávolítása
# ===============================
try {
Unregister-ScheduledTask -TaskName 'gMSA_Task' -Confirm:$false -ErrorAction Stop
Write-Log "Removed scheduled task gMSA_Task."
} catch {
Write-Log "Failed to remove task: $_"
}
# ===============================
# Log másolása hálózatra, ha még nincs ott
# ===============================
$dest = Join-Path $RemoteLogShare $newNameFile
if (-not (Test-Path $dest)) {
try {
Copy-Item -Path (Join-Path $ScriptFolder $newNameFile) -Destination $dest -Force
Write-Log "Log copied to share as $newNameFile"
} catch {
Write-Log "Failed to copy log: $_"
}
} else {
Write-Log "Log already exists on share: $newNameFile"
}
exit
}
# ===============================
# rename_computer.ps1 script létrehozása
# ===============================
$scriptPath = Join-Path $ScriptFolder 'rename_computer.ps1'
if (-not (Test-Path $scriptPath)) {
@"
param(
[string]`$RemoteLogShare = '$RemoteLogShare',
[string]`$ScriptFolder = '$ScriptFolder',
[string]`$newName = '$newName'
)
function Write-Log {
param([string]`$Message)
`$timestamp = Get-Date -Format 'yyyy-MM-dd HH:mm:ss'
`$LogFile = Join-Path `$ScriptFolder "`$newName.txt"
"`$timestamp `$Message" | Out-File -FilePath `$LogFile -Encoding UTF8 -Append
}
`$serial = (Get-CimInstance Win32_BIOS).SerialNumber
`$newNameFile = "`$newName.txt"
`$currentName = `$env:COMPUTERNAME
if (`$currentName -ne `$newName) {
try {
Rename-Computer -NewName `$newName -Force -ErrorAction Stop -Verbose
Write-Log "Renamed: `$currentName -> `$newName"
try {
`$LogFile = Join-Path `$ScriptFolder `$newNameFile
`$dest = Join-Path `$RemoteLogShare `$newNameFile
if (Test-Path `$dest) {
try {
`$fileInfo = Get-Item `$dest
`$creationDate = `$fileInfo.CreationTime.ToString('yyyy-MM-dd')
`$archiveName = "`$newName"+"-`$creationDate.txt"
`$archiveDest = Join-Path `$RemoteLogShare `$archiveName
Rename-Item -Path `$dest -NewName `$archiveDest -ErrorAction Stop
Write-Log "Existing log renamed to `$archiveName (creation date used)"
}
catch {
Write-Log "Failed to archive existing log: `$($_)"
}
}
Copy-Item -Path `$LogFile -Destination `$dest -Force -ErrorAction Stop
Write-Log "Log copied to share as `$newNameFile"
}
catch {
Write-Log "Failed to copy log to share: `$($_)"
}
}
catch {
Write-Log "Rename failed: `$($_)"
}
}
else {
Write-Log "Name already correct: `$currentName"
}
"@ | Out-File -FilePath $scriptPath -Encoding UTF8
Write-Log "Created rename_computer.ps1"
}
# ===============================
# gMSA fiók admin jog hozzárendelése, ha nem tag
# ===============================
if (-not (Get-LocalGroupMember Administrators -ErrorAction SilentlyContinue | Where Name -EQ $UserID)) {
try {
Add-LocalGroupMember -Group Administrators -Member $UserID -ErrorAction Stop
Write-Log "Added svc_gMSA to Administrators."
} catch {
Write-Log "Failed to add svc_gMSA: $_"
}
} else {
Write-Log "svc_gMSA already in Administrators."
}
# ===============================
# Scheduled Task regisztráció
# ===============================
$TaskName = 'gMSA_Task'
$psPath = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
$psArgs = "-ExecutionPolicy Bypass -NoProfile -File `"$scriptPath`""
$action = New-ScheduledTaskAction -Execute $psPath -Argument $psArgs
$trigger = New-ScheduledTaskTrigger -AtLogOn
$principal= New-ScheduledTaskPrincipal -UserID $UserID -LogonType Password -RunLevel Highest
if (-not (Get-ScheduledTask -TaskName $TaskName -ErrorAction SilentlyContinue)) {
try {
Register-ScheduledTask -TaskName $TaskName -Action $action -Trigger $trigger -Principal $principal -ErrorAction Stop
Write-Log "Registered task $TaskName"
} catch {
Write-Log "Failed to register task: $_"
}
} else {
Write-Log "Task $TaskName already exists."
}
# ===============================
# Task indítása
# ===============================
Zárjuk be a GPO-t, és link-eljük a megfelelő OU-ra!
A fenti script létrehoz egy rename_computer.ps1 file-t a gépen, amit a scheduled task fog futtatni az svc_gMSA fiók nevében. Ez a script tartalmaz egy részt amikor a log file-okat egy share-re másol, de erre miért van szükség?
Mivel az svc_gMSA fiók jelszavát csak azok a képek tudják lekérdezni az AD-ból akik tagjai a “gMSA_Gepek” security group-nak. Korábban említettem, hogy ha nem szeretnénk manuálisan kezelni a csoport tagjait, akkor ezt tudjuk automatizálni.
gMSA_Gepek tagság automatikus kezelése
Scheduled task segítségével képesek vagyunk a gMSA_Gepek security group tagjait úgy frissíteni, hogy csak azok a kliensek legyenek aktuálisan benne a csoportban, amelyeknél az átnevezés még nem futott le. Szükségünk van a következőkre:
1. Scheduled task a DC-n ami ütemezetten fut
2. PowerShell script amit a Scheduled task futtat
– OU tagok lekérése:
• Lekéri az összes számítógépobjektumot a megadott Hybrid OU-ból ($targetOUdn).
– Csoporttagok lekérése:
• Lekéri a megadott gMSA_Gepek nevű security group számítógép-tagjait.
– Összehasonlítás és szinkronizáció:
• Végigmegy az OU-ban lévő gépeken:
o Ha a géphez tartozó logfájl létezik a share-en (\\share\gépnév.txt), akkor feltételezi, hogy a gép átnevezése sikeres volt:
Ebben az esetben eltávolítja a gépet a csoportból, ha benne van.
o Ha a logfájl nem létezik, akkor a gép még nem végzett, ezért:
Hozzáadja a gépet a csoporthoz, ha még nincs benne.
– Logolás:
• Az egész műveletet naplózza a C:\scheduled scripts\UpdateGMSAGroup.log fájlba.
3. Share amihez az svc_gMSA account-nak adunk írási jogot
Nézzük a scriptet:
# UpdateGMSAGroup.ps1
# -------------------------------------------------------------
# Szinkronizálja a Hybrid OU gépobjektumait a 'gMSA_Gepek' AD csoporttal.
# Ha egy gépről még nincs log a megosztáson, hozzáadja a csoporthoz.
# Ha már van logja, eltávolítja a csoportból.
# -------------------------------------------------------------
# ===============================
# Paraméterek
# ===============================
$targetOUdn = "OU=Hybrid,OU=CORP,DC=corp,DC=contoso,DC=com" # Cél OU DN
$groupName = "gMSA_Gepek" # AD csoport neve
$logShare = "\\dc1\share" # Közös log megosztás helye
$logPath = "C:\scheduled scripts\UpdateGMSAGroup.log" # Lokális log fájl
# ===============================
# Minden művelet naplózása
# ===============================
Start-Transcript -Path $logPath -Append -ErrorAction SilentlyContinue
try {
# ===============================
# 1) OU gépek lekérdezése
# ===============================
$ouComputers = Get-ADComputer -SearchBase $targetOUdn -Filter * -Properties Name, DistinguishedName |
Select-Object Name, DistinguishedName
Write-Host "Found $($ouComputers.Count) computer(s) in OU $targetOUdn" -ForegroundColor Cyan
# ===============================
# 2) Csoport jelenlegi számítógép-tagjai
# ===============================
$groupMembers = Get-ADGroupMember -Identity $groupName -Recursive -ErrorAction Stop |
Where-Object { $_.objectClass -eq 'computer' } |
Select-Object Name, DistinguishedName
if (-not $groupMembers) { $groupMembers = @() } # Üres tömb, ha nincs tag
Write-Host "Group '$groupName' currently has $($groupMembers.Count) computer member(s)." -ForegroundColor Cyan
# ===============================
# 3) Minden OU-beli gép feldolgozása
# ===============================
foreach ($comp in $ouComputers) {
$computerName = $comp.Name
$computerDN = $comp.DistinguishedName
$logFile = Join-Path $logShare "$computerName.txt" # Logfájl elérési útja
if (Test-Path $logFile) {
# --- Log már létezik -> gépet el kell távolítani a csoportból ---
if ($groupMembers.DistinguishedName -contains $computerDN) {
try {
Remove-ADGroupMember -Identity $groupName -Members $computerDN -Confirm:$false -ErrorAction Stop
Write-Host "Removed $computerName from $groupName (log found on share)." -ForegroundColor Yellow
}
catch {
Write-Host "Failed to remove $computerName $_" -ForegroundColor Red
}
} else {
Write-Host "$computerName not in group (log exists) – no action needed." -ForegroundColor Gray
}
}
else {
# --- Nincs log -> gépet hozzá kell adni a csoporthoz ---
if (-not ($groupMembers.DistinguishedName -contains $computerDN)) {
try {
Add-ADGroupMember -Identity $groupName -Members $computerDN -ErrorAction Stop
Write-Host "Added $computerName to $groupName (log not found)." -ForegroundColor Green
}
catch {
Write-Host "Failed to add $computerName $_" -ForegroundColor Red
}
} else {
Write-Host "$computerName already in group – no action needed." -ForegroundColor Green
}
}
}
}
catch {
# Hiba esetén naplózzuk
Write-Host "Error during group update: $_" -ForegroundColor Red
}
finally {
# Naplózás leállítása
Stop-Transcript | Out-Null
}
Természetesen ennek a scriptnek / automatizmusnak a használata opcionális, kézzel is lehet kezelni a csoport tagjait. Abban az esetben, ha Hybrid Autopilot-hoz szeretnéd illeszteni a folyamatot, érdemes implementálni ezt is.
A scriptek-et érdemes átnézni, és minden változót frissíteni a környezettől függően! Abban az esetben, h anem szeretnéd automatizálni a security group kezelését, kommenteld ki azt a részt a scriptből, ami a Share-re másolja a logokat!
Lehet, hogy nem pont ezt a megoldást fogod használni, de remélhetőleg adott néhány hasznos ötletet vagy új nézőpontot. 🙂
Leave a comment