6
我想爲不同的登錄帳戶編寫用戶映射腳本。我已經腳本創建用戶和個人服務器角色,但我不知道如何設置用戶映射與Powershell,我還需要設置Database Role membership
,特別是db_backupoperator
Powershell - 用戶映射SQL Server 2012
任何人都知道如何做到這一點與Powershell?
我想爲不同的登錄帳戶編寫用戶映射腳本。我已經腳本創建用戶和個人服務器角色,但我不知道如何設置用戶映射與Powershell,我還需要設置Database Role membership
,特別是db_backupoperator
Powershell - 用戶映射SQL Server 2012
任何人都知道如何做到這一點與Powershell?
假設您的登錄創建
## Creating database user and assigning database role
#get variables
$instanceName = "yourInstance"
$loginName = "testLogin"
$dbUserName = "testUserName"
$databasename = "tempdb"
$roleName = "db_backupoperator"
$server = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Server -ArgumentList $instanceName
#add a database mapping
$database = $server.Databases[$databasename]
$login = $server.Logins[$loginName]
if ($database.Users[$dbUserName])
{
$database.Users[$dbUserName].Drop()
}
$dbUser = New-Object `
-TypeName Microsoft.SqlServer.Management.Smo.User `
-ArgumentList $database, $dbUserName
$dbUser.Login = $loginName
$dbUser.Create()
#assign database role for a new user
$dbrole = $database.Roles[$roleName]
$dbrole.AddMember($dbUserName)
$dbrole.Alter
洙,這個作品,就像我以前做的嘗試。它將爲指定的數據庫設置用戶映射,但是,它將具有'dbUserName'作爲用戶,我希望''登錄'在我的情況下是一個組作爲用戶...我將添加代碼爲我所擁有的。 – JMeterX
登錄名和dbUserName有什麼區別? – Demodave
「AddMember」似乎不起作用。 – Demodave