Azure Sql 中的 Active Directory(AD) 身份验证不起作用

2024-03-05

我正在尝试让 Azure AD 身份验证针对我的 Azure SQL 数据库工作。

  • 我创建了一个 PaaS 数据库及其关联的 PaaS Sql Server。
  • 我将我的 Azure AD 帐户分配为“PaaS Sql Server”的“Active Directory 管理员”。

接下来,我使用我的域帐户登录 SSMS 来创建用户:

CREATE USER [[email protected] /cdn-cgi/l/email-protection] FROM EXTERNAL PROVIDER; 
GO
sp_addrolemember db_datareader,  [[email protected] /cdn-cgi/l/email-protection];  
GO
sp_addrolemember
db_datawriter,  [[email protected] /cdn-cgi/l/email-protection];  
GO

当我尝试使用以下方式登录时[电子邮件受保护] /cdn-cgi/l/email-protection帐户,我返回:

   Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'. (.Net SqlClient Data Provider)

    Server Name: zzzzz.database.windows.net
    Error Number: 18456
    Severity: 14
    State: 1
    Line Number: 65536

我缺少什么?

奇怪的观察,如果我故意使用错误的密码,我会收到此错误:AADSTS70002:验证凭据时出错。 AADSTS50126:用户名或密码无效,这表明 AD 正在以某种方式工作,但整个过程中有些东西被破坏了。

另一个奇怪的观察: 如果我添加有效的 AD 帐户,则成功

CREATE USER [[email protected] /cdn-cgi/l/email-protection] FROM EXTERNAL PROVIDER; 

如果我生成了一个错误的 AD 帐户

CREATE USER [[email protected] /cdn-cgi/l/email-protection] FROM EXTERNAL PROVIDER; 

我回来了:

Principal '[email protected] /cdn-cgi/l/email-protection' could not be found or this principal type is not supported.

来自“类似帖子”

当您未指定要连接的数据库时,会发生匿名登录错误。只需在 SSMS 登录屏幕上选择“选项”,然后输入要连接的数据库名称。这是因为您的用户是创建它的数据库中的包含用户。它在 Master 上不存在。 – 格雷格·格拉特 2017 年 3 月 7 日 1:23

这解决了我的问题——浪费了几个小时!

注意:对于 ODBC 连接,还必须在 master 中创建用户

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure Sql 中的 Active Directory(AD) 身份验证不起作用 的相关文章

随机推荐

  • 如何删除存储库中的文件,同时在本地保留(和忽略)它们?

    我错误地将一些本地项目文件添加到 git 存储库并提交 推送它们 我想从远程存储库中删除这些文件 将它们保留在本地 并在将来的提交 推送中忽略它们 解决这个问题的最佳方法是什么 最干净的解决方案如下 git rm cached本地的额外文件
  • 如果使用 CreateResponse 扩展方法返回 Azure Function HttpResponseMessage,则执行测试时出错

    我的Azure功能代码如下 public static class MyHttpTriggerFunction public static async Task
  • PHP内容分离

    所以我们都知道 不仅在 PHP 中 您应该始终将代码与内容 设计 html 分开 我今天在这里看到有人说相反的 我的意思是 您不希望在更大的项目中使用其中之一 是吗 但是 将代码与内容分离的好方法是什么 我一直在使用一个简单的模板系统 主要
  • Angular2 中的 ViewChildren 装饰器可以与接口一起使用吗?

    我对 Angular 2 的理解是ViewChildren装饰器允许组件获取其他组件或指令的查询 当我知道组件的特定类型时 我可以让它在 Typescript 中工作 但我希望能够获得QueryList当我刚刚知道组件的接口时 这样 我就可
  • 如何提取大型文本文件中两个唯一单词之间的信息

    我有大约 150 个充满字符信息的文本文件 每个文件包含两个独特的单词 alpha 和 bravo 我想提取这些独特单词之间的文本并将其写入不同的文件 我可以手动按 CTRL F 组合这两个单词并复制它们之间的文本 我只是想知道如何使用程序
  • 将 Postgresql 与 Grails 一起使用:缺少序列或表:hibernate_sequence

    我在使用 Grails 2 0 和 Postgresql 9 1 时遇到问题 我正在尝试使用顺序 ID 映射现有数据库 但是 即使没有在域中创建任何类 我也会遇到错误 Compiling 1 source files Running Gra
  • 如何在 Liquid Haskell 中编写 log2 函数

    我正在尝试从 Liquid Haskell 学习book http ucsd progsys github io liquidhaskell tutorial book pdf 为了测试我的理解 我想写一个函数log2它接受 2 n 形式的
  • 让 GCC 优化手工组装

    试图让 GCC 不会每次生成加载 修改 存储操作 or 我定义了以下宏 define bset base offset mask bmanip set base offset mask define bclr base offset mas
  • Spring security 自定义身份验证过滤器,无需 web.xml

    使用注释和java配置 我不太清楚如何为spring security注册一个覆盖的过滤器 我想要实现的是自动登录而不显示登录表单 因为那时用户已经通过身份验证 因此 只会读取标头参数并使用 spring security 进行授权 这是我
  • 可以保留 ASIHTTPRequest 委托吗?

    保留子类的委托可以吗ASIHTTPRequest 我做了一个子类ASIHTTPRequest called JSONRequest 每个实例JSONRequest是它自己的委托 处理回调 并将它们传递给jsonDelegate 这是一个私有
  • 如何动态设置 JPA 标准查询的位置/命名参数?

    Hibernate 提供程序不会生成准备好的语句非字符串类型参数 除非它们设置为entityManager createQuery criteriaQuery setParameter Parameter p T t 默认情况下 如 Ecl
  • 在运行时绑定时,WPF UserControl 不会填充父容器

    我有一个带有 StackPanel 的窗口 并且 StackPanel 有一个 ContentControl 它在运行时获取绑定到它的 UserControl 在 MainWindow xaml 中
  • 测试 Mongoose Node.JS 应用程序

    我正在尝试为我的 Node 应用程序的部分内容编写单元测试 我正在使用 Mongoose 作为我的 ORM 我搜索了很多关于如何使用 Mongoose 和 Node 进行测试的信息 但没有找到任何内容 这些解决方案 框架似乎都是全栈的 或者
  • 使用 Jenkins 进行 Azure 配置

    作为 QA 管道 在 Jenkins 中 的一部分 目标是自动配置和配置虚拟机以运行 QA 测试 Jenkins 管道可以触发 Terraform 代码来自动配置 VM 和用于配置 VM 的 Ansible 代码 但是 诸如此类的问题rol
  • 使用 canvaskit 进行 Flutter Web 构建:无法加载 Image.network()

    I can t use the image URL from my domain but I can use the image URL from another domain like Facebook The error is 当将 S
  • 如何从 MySQL 表中的多个列中获取指定最小长度的所有不同单词?

    在 MySQL 5 6 数据库中我有表tablename其中有 包括其他 三个TEXT列 col a col b col c 我想从这三列中提取所有至少 5 个字符长的唯一单词 单词之间用空格分隔 我所说的 单词 是指任何非空格字符的字符串
  • 在故事板中重用 uiview xib

    我通常喜欢在界面生成器中创建和设计我的 uiview 有时我需要在 xib 中创建单个视图 该视图可以在故事板的多个视图控制器中重用 在故事板中重用并渲染 xib 使用 Swift 2 2 和 Xcode 7 3 1 进行测试 1 创建一个
  • 在 .NET 中打开 pdf

    在我们正在开发的应用程序中 我们正在尝试实现帮助 我们有一个 pdf 帮助文档 目前认为当用户单击帮助按钮时仅打开 pdf 是可以接受的 该应用程序是一个桌面应用程序 pdf 文件需要以某种方式包含在安装中并安装在本地计算机上 我本质上需要
  • Lua 注册表与轻用户数据和引用有什么区别?

    因此 使用 Lua C API 您可以在注册表中保存 Lua 值并在以后检索它 有不同的方法可以做到这一点 您可以创建一个变量并使用它的指针作为注册表中的键 因为它始终是唯一的 您可以将指针作为轻用户数据推送 您还可以使用创建参考LuaL
  • Azure Sql 中的 Active Directory(AD) 身份验证不起作用

    我正在尝试让 Azure AD 身份验证针对我的 Azure SQL 数据库工作 我创建了一个 PaaS 数据库及其关联的 PaaS Sql Server 我将我的 Azure AD 帐户分配为 PaaS Sql Server 的 Acti