当前位置: 首页 > 面试题库 >

Powershell-用户映射SQL Server 2012

淳于祺
2023-03-14
问题内容

我正在尝试为不同的登录帐户编写用户映射脚本。我已经为用户和单个服务器角色的创建编写了脚本,但是我不知道如何使用Powershell设置用户映射,我还需要设置Database Role membership,特别是db_backupoperator

有人知道如何使用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


 类似资料:
  • 问题内容: 我试图从“用户”表中获取所有用户的列表,但出现以下错误: 这是我编写的用于添加/获取用户的代码: 添加用户是可行的,但是当我使用getUsers函数时,出现这些错误。 这是我的hibernate配置文件: 这是我的User类: 知道为什么我会收到此错误吗? 问题答案: 在HQL中,应使用映射的 Java类名 和 属性名 ,而不是实际的表名和列名,因此HQL应该为: 更新:更精确地说,您

  • 问题内容: 我试图从“用户”表中获取所有用户的列表,但出现以下错误: 这是我编写的用于添加/获取用户的代码: 添加用户是可行的,但是当我使用getUsers函数时,出现这些错误。 这是我的休眠配置文件: 这是我的User类: 知道为什么我会收到此错误吗? 问题答案: 在HQL中,应使用映射的 java类名 和 属性名 ,而不是实际的表名和列名,因此HQL应该为: 更新:更精确地说,您应该使用在中配

  • 我正在使用Hibernate和JPA注释来映射我的类。当hibernate尝试映射这个类时,我遇到了一个问题 我的Social alStat类是: 我得到了这个错误: 我猜发生这种情况是因为我试图映射到一个基本类,但@ElementCollection注释不应该解决这个问题吗? 我的item类如下所示:

  • 前端将这个json发送到我的API 控制器:

  • 我试图使用KeyCloak的管理API,以便向用户角色映射添加客户端级别的角色。为此,我使用管理endpoint: 不确定这里的问题是什么,因为该角色存在于系统中。这里会出什么问题?

  • 我指的是https://developer.jboss.org/wiki/SessionsAndTransactions,目前正试图了解与JTA的划界问题。它声明在使用getCurrentSession()的特定事务中,总是给出相同的当前会话。是不是意味着: < li >如果另一个用户在另一个线程中执行同一段代码(通过查找获取一个事务,然后使用getCurrentSession()并关闭该事务),