Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| fsp-аккаунты [2026/03/25 14:50] – jp | fsp-аккаунты [2026/03/25 15:06] (current) – jp | ||
|---|---|---|---|
| Line 27: | Line 27: | ||
| Get-ADUser -Filter { objectSID -eq " | Get-ADUser -Filter { objectSID -eq " | ||
| - | | + | Если мы хотим удалить FSP-аккаунт из группы - лучше всего опираться на //DN//, а не //SID//, пример: |
| + | |||
| + | Set-ADGroup -Identity $group -Remove @{member=$fsp.DistinguishedName} | ||
| ==== Скрипт замены FSP на аккаунты актуального домена ==== | ==== Скрипт замены FSP на аккаунты актуального домена ==== | ||
| Line 34: | Line 36: | ||
| :!: Примечание: | :!: Примечание: | ||
| - | В группах нового домена, | + | В группах нового домена, |
| + | |||
| + | В этом случае при декомиссии старого домена данные права пропадут | ||
| + | |||
| + | Если таких групп много - лучший вариант - это скрипт, | ||
| + | |||
| + | < | ||
| + | $group = " | ||
| + | $server = " | ||
| + | |||
| + | $members = Get-ADGroup -Identity $group -Properties Members -Server $server | | ||
| + | Select-Object -ExpandProperty Members | | ||
| + | Get-ADObject -Server $server | | ||
| + | Where-Object ObjectClass -eq foreignSecurityPrincipal | ||
| + | |||
| + | foreach ($fsp in $members) { | ||
| + | $sid = $fsp.Name | ||
| + | |||
| + | try { | ||
| + | $nt = (New-Object System.Security.Principal.SecurityIdentifier($sid)). | ||
| + | Translate([System.Security.Principal.NTAccount]).Value | ||
| + | |||
| + | # DOMAIN\username | ||
| + | $sam = $nt.Split(' | ||
| + | |||
| + | Write-Host " | ||
| + | |||
| + | # ищем локального пользователя | ||
| + | $localUser = Get-ADUser -Filter { SamAccountName -eq $sam } -Server $server -ErrorAction SilentlyContinue | ||
| + | |||
| + | if ($localUser) { | ||
| + | Write-Host "Found local user: $($localUser.SamAccountName)" | ||
| + | |||
| + | # добавляем в группу | ||
| + | Add-ADGroupMember -Identity $group -Members $localUser -Server $server | ||
| + | |||
| + | # удаляем FSP | ||
| + | Set-ADGroup -Identity $group -Remove @{member=$fsp.DistinguishedName} | ||
| + | |||
| + | Write-Host " | ||
| + | } | ||
| + | else { | ||
| + | Write-Warning "Local user NOT FOUND for $sam" | ||
| + | } | ||
| + | } | ||
| + | catch { | ||
| + | Write-Warning " | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | {{tag> | ||