我正在 SQL 服务器中创建代理用户。我运行下面的 SQL 但它失败了,因为我的域名中有破折号。
CREATE LOGIN [ABC-SEN-DEA\proxyssisuser] WITH PASSWORD='Password'
Run Code Online (Sandbox Code Playgroud)
消息 15006,级别 16,状态 1,第 1 行
“ABC-SEN-DEA\proxyssisuser”不是有效名称,因为它包含无效字符。
请帮助如何纠正此错误。
你的想法有误区。用于创建 SQL Server 登录名的 Windows 登录名不需要密码。
当您使用 Windows 帐户创建 SQL 登录时,您必须使用不同的语法。
CREATE LOGIN [ABC-SEN-DEA\proxyssisuser]
FROM WINDOWS
WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
GO
Run Code Online (Sandbox Code Playgroud)
参考: 创建登录 (Transact-SQL) (Microsoft)
当您将 Windows 登录名与 SQL Server 链接时,SQL Server 将信任已通过登录 Windows 系统的帐户验证的 Windows 登录名。
选择身份验证模式一文中的通过 Windows 身份验证连接一章解释了 Windows 帐户如何登录到 SQL Server 实例:
当用户通过 Windows 用户帐户连接时,SQL Server 使用操作系统中的 Windows 主体令牌验证帐户名和密码。这意味着用户身份由 Windows 确认。SQL Server 不要求输入密码,也不执行身份验证。Windows 身份验证是默认的身份验证模式,比 SQL Server 身份验证安全得多。Windows 身份验证使用 Kerberos 安全协议,针对强密码的复杂性验证提供密码策略实施,支持帐户锁定,并支持密码过期。使用 Windows 身份验证建立的连接有时称为受信任连接,因为 SQL Server 信任 Windows 提供的凭据。
祝你好运。
| 归档时间: |
|
| 查看次数: |
2455 次 |
| 最近记录: |