2013-05-15 89 views
1

我可以通過傳遞加密密碼在SQL Server 2008r2中創建SQL登錄嗎?我正在使用下面的代碼。通過傳遞加密密碼創建新的sql登錄

[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.SMO') | Out-Null 
#Assign variables 
$Instance = "INHYDDPC120" 
$LoginName = "MyNewLogin" 
$Password = "ggrytyrty"#(this has to be an encrypted password) 
$DBName  = "Test_SMO_Database" 

#Get the server object 
$Server = New-Object ("Microsoft.SqlServer.Management.SMO.Server") $instance 

#Get the login object if it exists 
$Login = $Server.Logins.Item($LoginName) 

IF (!($Login)) #check to see if login already exists 
{ 
    #it doesn't, so instantiate a new login object 
    $Login = New-Object ("Microsoft.SqlServer.Management.SMO.Login") ($Server, $LoginName) 

    #make it a SQL Login 
    $Login.LoginType = [Microsoft.SqlServer.Management.Smo.LoginType]::SqlLogin 

    #Create it on the server with the specified password 

    # $Login.PolicyEnforcementenabled = $false 
# $Login.PasswordExpirationEnabled = $false 
$Login.DefaultDatabase = $DBName  
$Login.Create($Password) 

回答