2010. 8. 18. 17:02
안녕하세요. 엉스데브 입니다.
PowerShell 을 사용해 FTP 사이트를 만들다 보니, FTP 로그인 정보로 사용할 사용자 계정추가가 필요 해 졌습니다.
해서 간단하게 로컬 컴퓨터의 사용자를 추가 및 삭제 할 수 있는 함수를 만들어 보았습니다.
*아래 함수들은 반드시 PowerShell 이 관리자 권한으로 실행 되었을 때에만 권한 문제 없이 실행 됩니다.
아래 더보기 버튼을 누르시면, 간단한 해설을 보실 수 있습니다.
<참고 URL>
http://stackoverflow.com/questions/383390/create-local-user-with-powershell-windows-vista
http://powershell.com/cs/media/p/2327.aspx
PowerShell 을 사용해 FTP 사이트를 만들다 보니, FTP 로그인 정보로 사용할 사용자 계정추가가 필요 해 졌습니다.
해서 간단하게 로컬 컴퓨터의 사용자를 추가 및 삭제 할 수 있는 함수를 만들어 보았습니다.
*아래 함수들은 반드시 PowerShell 이 관리자 권한으로 실행 되었을 때에만 권한 문제 없이 실행 됩니다.
# 새 로컬 사용자 추가.
function New-LocalUser
{
param
(
[parameter(Mandatory=$true)]$Name,
[parameter(Mandatory=$true)]$Password
)
$LocalUser = Get-WmiObject Win32_useraccount -Computer $env:computerName -Filter "LocalAccount=True" | Where-Object -Filter {$_.Name -eq $Name}
if($LocalUser -eq $null)
{
$LocalComputer = [adsi]"WinNT://$env:computerName"
$LocalUser = $LocalComputer.Create("User", $Name)
$LocalUser.SetPassword($Password)
$LocalUser.SetInfo()
}
}
function New-LocalUser
{
param
(
[parameter(Mandatory=$true)]$Name,
[parameter(Mandatory=$true)]$Password
)
$LocalUser = Get-WmiObject Win32_useraccount -Computer $env:computerName -Filter "LocalAccount=True" | Where-Object -Filter {$_.Name -eq $Name}
if($LocalUser -eq $null)
{
$LocalComputer = [adsi]"WinNT://$env:computerName"
$LocalUser = $LocalComputer.Create("User", $Name)
$LocalUser.SetPassword($Password)
$LocalUser.SetInfo()
}
}
# 로컬 사용자 삭제.
function Remove-LocalUser
{
param
(
[parameter(Mandatory=$true)]$Name
)
$LocalComputer = [adsi]"WinNT://$env:computerName"
$LocalComputer.Delete("user",$Name)
}
function Remove-LocalUser
{
param
(
[parameter(Mandatory=$true)]$Name
)
$LocalComputer = [adsi]"WinNT://$env:computerName"
$LocalComputer.Delete("user",$Name)
}
# 로컬 사용자 목록 가져오기.
function Get-LocalUser
{
param
(
$Name
)
if($Name -eq $null)
{
Get-WmiObject Win32_useraccount -Computer $env:computerName -Filter "LocalAccount=True"
}
else
{
Get-WmiObject Win32_useraccount -Computer $env:computerName -Filter "LocalAccount=True" | Where-Object -Filter {$_.Name -eq $Name}
}
}
function Get-LocalUser
{
param
(
$Name
)
if($Name -eq $null)
{
Get-WmiObject Win32_useraccount -Computer $env:computerName -Filter "LocalAccount=True"
}
else
{
Get-WmiObject Win32_useraccount -Computer $env:computerName -Filter "LocalAccount=True" | Where-Object -Filter {$_.Name -eq $Name}
}
}
아래 더보기 버튼을 누르시면, 간단한 해설을 보실 수 있습니다.
<참고 URL>
http://stackoverflow.com/questions/383390/create-local-user-with-powershell-windows-vista
http://powershell.com/cs/media/p/2327.aspx
'Powershell > 엉스데브' 카테고리의 다른 글
PowerShell 로 IIS 설치 하기(Windows 2008 R2, ServerManager 모듈 사용) (5) | 2010.08.24 |
---|---|
PowerShell 용 findgrep 명령어. (0) | 2010.08.18 |
PowerShell 용 df (disk freespace) 명령어. (1) | 2010.08.12 |
PowerShell 의 현재 실행 권한 확인 하기 (0) | 2010.08.02 |
PowerShell 에서 MSSQL 접속하기. (0) | 2010.07.26 |