SQL Server 2005(Express)-登录 vs 用户

4
我对于Microsoft SQL Server相当陌生,我有一些MySQL的使用经验,在MySQL中,如果我理解正确,你可以使用具有特权的用户;这些特权决定你在MySQL服务器上可以访问哪些数据库。
然而,现在我面临这样一个情况:我必须恢复SQL Server 2005 Express上的一个数据库,该数据库有其自己的用户和用户密码。所以,如果我想让外部用户(这样他们就可以连接到我的服务器)访问这些用户,我该怎么做?
为了更好地说明问题,假设在数据库服务器上有两个登录帐户“Mike”和“John”,并且在数据库“Animals”中有两个用户“Chris”和“Jeff”。
我需要让Jeff能够登录以获取访问数据库的权限。是否有一种很好的方式使此成为可能而不创建新的用户/登录?如果没有,最佳/最常见的解决方案是什么?
我真的很感激您提供的任何有用的意见!

可能是SQL Server中用户和登录之间的区别的重复问题。 - GSerg
2个回答

7

一个服务器级别的对象(登录)被映射到多个数据库级别的对象(用户)。

一个登录不能映射到数据库中的多个用户,但可以在每个数据库中映射到最多一个用户。

因此,您需要为这些用户创建新的登录,但将它们映射到现有的用户。这可以使用 ALTER USER 命令来完成。或者,如果除了将它们映射到现有用户外,您对 Mike 和 John 的登录没有其他用途,也可以这样做。


2
任何需要访问数据库的用户都需要拥有自己的登录名,或者您可以为 Windows 安全组创建一个登录名,并通过这种方式授予整个用户组访问权限。如果将来需要向更多用户授予访问权限,则只需将其添加到 Windows 安全组即可。请注意保留 HTML 标签。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接