📖

test

に公開

--- 設定項目 ---

$domainUser = "DOMAIN\username" # ← ここを対象のドメインユーザーに変更
$privilege = "SeBackupPrivilege"

--- ユーザーがローカルに存在するかチェック ---

try {
account = New-Object System.Security.Principal.NTAccount(domainUser)
$sid = $account.Translate([System.Security.Principal.SecurityIdentifier])
Write-Host "[$domainUser] の SID: $sid"
} catch {
Write-Error "ユーザー $domainUser が見つかりません。ドメイン名とユーザー名を確認してください。"
exit
}

--- secedit 用 INF ファイルを作成 ---

infPath = "env:TEMP\grant_backup_priv.inf"
$infContent = @"
[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[Privilege Rights]
$privilege = $domainUser
"@
Set-Content -Path $infPath -Value $infContent -Encoding Unicode

--- 特権を付与 ---

secedit /configure /db "$env:TEMP\privilege.db" /cfg $infPath /areas USER_RIGHTS

--- 付与されたか確認 ---

Write-Host "`n現在の特権(whoami /priv):"
whoami /priv | findstr $privilege

Discussion