我正在尝试托管SQL服务器数据库,但每当我尝试连接到它时,我都会收到此错误:
登录来自不受信任的域,不能与Windows身份验证一起使用
我使用以下命令通过Matlab连接:
conn = database('Clinical_Data','DoyleLab07\Acc','','com.microsoft.sqlserver.jdbc.SQLServerDriver','jdbc:sqlserver://DOYLELAB07\SQLEXPRESS:54287;database=Clinical_Data;integratedSecurity=true;').
Run Code Online (Sandbox Code Playgroud)
只要我在用于托管服务器的计算机上使用matlab,使用matlab连接数据库就可以正常工作.但是,当我使用另一台计算机和相同的Matlab命令时,我得到了上面显示的错误.
当我看控制面板\系统.我注意到我的主机PC或我用来连接主机的PC上没有列出域名,但两台计算机都在同一个工作组中.我是否可以通过创建域并将外部PC和主机添加到该域来解决我的问题?如果是这样,怎么办呢?
任何建议将非常感谢.感谢您阅读我的帖子.
小智 28
摆脱Integrated Security=true为我工作.
Not*_*tMe 26
要使用Windows身份验证,必须满足以下两个条件之一:
如果这些都不是真的,你必须做以下两件事之一:
通过FAR,最简单的方法是将SQL Server更改为使用Windows和SQL服务器帐户.然后你只需要在数据库服务器上创建一个sql server用户并更改你的连接字符串来做到这一点.
最佳案例选项1将需要一整天的安装和配置.方案2应该花费大约5分钟.
Jay*_*Jay 13
如果您的SQL Server在一个域控制器上,并且您尝试从另一个域控制器连接到它,那么您将在以后遇到此错误
IntegratedSecurity = true;
Run Code Online (Sandbox Code Playgroud)
即使您在连接字符串中包含有效的SQL Server用户名和密码,也会发生这种情况,因为它们将自动覆盖您的Windows登录名和密码.集成安全性意味着 - 使用Windows凭据对SQL Server进行登录验证.因此,如果您登录到其他域控制器,那么它将失败.如果您在两个不同的域控制器上,那么您别无选择,只能使用
IntegratedSecurity = false;
Run Code Online (Sandbox Code Playgroud)
现在,当集成安全性为假时,SQL Server将使用连接字符串中提供的SQL Server登录名和密码.为此,SQL Server实例必须将其身份验证模式配置为混合模式,即SQL Server和Windows身份验证模式.
若要在SQL Server中验证或更改此设置,可以打开SQL Server Management Studio并右键单击服务器名称,然后选择"属性".在出现的弹出窗口中选择安全性,如果需要,您将看到更改此设置的位置.
小智 9
我在连接到 SQL Always On Listener 时遇到了这个问题。禁用环回检查解决了该问题。
\n\n使用 regedit 编辑注册表。(开始 \xe2\x80\x93> 运行 > Regedit )
导航:HKLM\\System\\CurrentControlSet\\Control\\LSA
添加一个DWORD名为\xe2\x80\x9cDisableLoopbackCheck\xe2\x80\x9d
将此值设置为1
使用DNS别名和托管文件连接到使用不同域名的计算机时,我遇到了同样的问题.
假设您有一个名为sql1on 的SQL服务器mydomain.com- 这是一个Active Directory域 - 并且您还有一个用于mydomain.net的DNS区域,并且 - 为了保持一致性 - 您设置了一个DNS别名(CNAME)记录database.mydomain.net --> sql1.mydomain.com
您将能够连接到sql1.mydomain.com使用Windows集成安全性,但database.mydomain.net 即使它是相同的服务器也无法连接,因为域名与您的AD域不匹配.
为什么不使用 SQL Server 帐户并同时传递用户名和密码?
原因如下。
简而言之,您似乎遇到了身份验证问题。
工作组的问题是没有像 Active Directory (AD) 这样的通用访问控制列表。如果您使用 ODBC 或 JDBC,则会传递错误的凭据。
即使您在安装了 SQL Express (SE\LWA) 的计算机 (SE) 上创建本地 Windows 帐户 (LWA),从客户端计算机 (CM) 传递的凭据也将是 CM\LWA。
| 归档时间: |
|
| 查看次数: |
214309 次 |
| 最近记录: |