Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 是否可以将登录从Windows更改为SQL Server身份验证?_Sql Server_Sql Server 2008 - Fatal编程技术网

Sql server 是否可以将登录从Windows更改为SQL Server身份验证?

Sql server 是否可以将登录从Windows更改为SQL Server身份验证?,sql-server,sql-server-2008,Sql Server,Sql Server 2008,我使用Windows身份验证创建了一个登录名。它的“属性”窗口的“服务器身份验证”部分变灰 能否将用户切换到SQL Server身份验证?服务器设置为SQL server和Windows身份验证模式。简短的回答是否。不过有一种方法。如果您想保留数据库用户对象权限,这是一个困难的问题,您必须这样做(假设您没有使用数据库角色,使您的生活变得更加轻松)。如果尝试将最初映射到Windows登录的用户映射到Sql登录,则会收到以下错误 ALTER USER [old_windows_Login_based

我使用Windows身份验证创建了一个登录名。它的“属性”窗口的“服务器身份验证”部分变灰


能否将用户切换到SQL Server身份验证?服务器设置为SQL server和Windows身份验证模式。

简短的回答是否。不过有一种方法。如果您想保留数据库用户对象权限,这是一个困难的问题,您必须这样做(假设您没有使用数据库角色,使您的生活变得更加轻松)。如果尝试将最初映射到Windows登录的用户映射到Sql登录,则会收到以下错误

ALTER USER [old_windows_Login_based_user]
WITH login = [new_Sql_login]
收益率:

Msg 33017, Level 16, State 1, Line 1
Cannot remap a user of one type to a login of a different type. For example, a SQL user        
must be mapped to a SQL login; it cannot be remapped to a Windows login.
因此,您最终将使用不同的身份验证方法删除并重新创建登录名和用户