将用户添加到SQL Server中的服务器角色

问题描述 投票:4回答:2

我正在尝试使用PowerShell将用户添加到SQL Server角色。

我有一个脚本,它读取服务器,用户和角色信息并将其放入文本文件中。我能够连接到服务器并检查该服务器中的用户可用性,但是我无法将服务器角色添加到用户。请协助添加角色的正确脚本。我的脚本很长,无法将其放在这里。有没有办法将它作为文本文件附加?

sql-server powershell roles
2个回答
2
投票

Add-UserToRole函数接受四个参数Server,Database,User和Role,并进行一系列错误检查。

假设您有以下带有用户信息的文件

enter image description here enter image description here

并使用它们与Add-SQLAccountToSQLRole和Add-UserToRole函数来创建用户。试试这个

enter image description here

Powershell结果如下

enter image description here

查看Here了解更多详情和完整代码


0
投票

我找到了一个非常简单的列表here

这使用Windows域用户,但没有理由它也不适用于SQL Server用户。无论如何,这里是:

$sqlSrv = New-Object 'Microsoft.SqlServer.Management.Smo.Server' "SQLServer\Instance"

$login = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Login -ArgumentList $sqlSrv, "DOMAIN\username"
$login.LoginType = "WindowsUser"

$login.AddToRole("MyServerRole")
$login.Alter()

如果你还需要在同一个脚本中创建登录(我不认为这是OP的情况),你只需在$login.Create()调用之前添加AddToRole

© www.soinside.com 2019 - 2024. All rights reserved.