gpt4 book ai didi

azure - 无法使用给定凭据访问 Azure 专用 SQL 池

转载 作者:行者123 更新时间:2023-12-03 03:40:05 24 4
gpt4 key购买 nike

我们的组织拥有 Azure Synapse 专用池实例。我正在尝试向 Azure Purview 注册 Azure Synapse 专用池并想要扫描 Synapse DB。但是,我每次都会收到以下错误:

“无法使用给定凭据访问 Azure 专用 SQL 池”

以下是我注册数据源的过程:

  1. 我打开了“Purview Studio”
  2. 在那里我创建了一个“集合”
  3. 然后我进入“注册源”
  4. 然后我搜索“Azure Synapse Dedicated Pool”
  5. 然后选择我的 Azure Synapse 专用池所在的订阅
  6. 然后我注册了我的数据源
  7. 现在我正在尝试为我的 Synapse 专用池创建新扫描

问题从这里开始,首先我选择了订阅,然后选择了资源组,然后选择了 Synapse DB 名称。我尝试了两种身份验证方法来验证我的 Synapse 实例。第一个是 Purview MSI 帐户,第二个是 SQL 身份验证。我已使用以下命令将我的 Purview MSI 帐户添加为 Synapse 专用池中的用户。

从外部提供商创建用户 [PurviewAccountName]去EXEC sp_addrolemember 'db_datareader', [PurviewAccountName]去

现在我尝试测试连接,但它不起作用并给出以下错误:

“无法使用 Purview MSI 帐户访问 Azure 专用 SQL 池”

我的 Azure Synapse 专用池实例无法公开访问,我们已将其放在专用链接后面。我可以在我的计算机上使用 VPN 连接来连接我的 Azure Synapse 实例,并通过 SSMS 和 Azure Data Studio 登录。

我还尝试使用保存在 keyvault 下的 SQL 用户名和密码进行 SQL 身份验证。我已经检查了多次,并且确信我已经正确配置了它。但当我尝试测试连接时仍然如此。它显示以下错误:

“无法使用给定凭据访问 Azure 专用 SQL 池”

我读过的一些地方,如果 Azure Synapse 实例位于专用链接后面,我需要自托管集成运行时。

因此,我在计算机上安装了集成运行时,对其进行配置并通过连接到 VPN 来测试使用 SQL 身份验证的 Synapse 连接。自托管 IR 配置成功。我用两个 IR 进行了测试。 Azure IR 和自托管 IR。但不幸的是,我遇到了同样的错误。

我还将 Purview MSI 帐户添加到 keyVault 中的访问策略中,并提供了对 key 和 secret 的 GET、列出权限。

但是,我没有得到我在这里缺少的东西以及为什么它给我同样的错误。对此的任何帮助对我来说都意义重大..

最佳答案

CREATE USER [PurviewAccountName] FROM EXTERNAL PROVIDER
GO
EXEC sp_addrolemember 'db_datareader', [PurviewAccountName]
GO

根据微软官方文档,要执行上述命令,必须是工作区中的Azure Synapse管理员。还要求您的权限帐户名称必须具有读者角色集,这可以通过 Azure Synapse 工作区资源下的访问控制 (IAM) 来完成。

要创建 SQL 池、Apache Spark 池和集成运行时,用户必须在工作区中至少具有 Azure 贡献者角色。贡献者角色还允许这些用户管理资源,包括暂停和扩展。如果您使用 Azure Portal 或 Synapse Studio 创建 SQL 池、Apache Spark 池和 INtegration 运行时,则需要资源组级别的 Azure 贡献者角色。

enter image description here

要授予对专用 SQL 池数据库的访问权限,脚本可以由工作区创建者或workspace1_SynapseAdministrators 组的任何成员运行。

在 Azure Synapse SQL 脚本编辑器中执行以下步骤:

  • 通过在使用“连接到”下拉列表选择的目标数据库上运行以下命令,在数据库中创建用户:

CREATE USER [<<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="67060b0e06142703080a060e094904080a" rel="noreferrer noopener nofollow">[email protected]</a>>] FROM EXTERNAL PROVIDER;

  • 授予用户访问数据库的角色

EXEC sp_addrolemember 'db_owner', '<<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="86e7eaefe7f5c6e2e9ebe7efe8a8e5e9eb" rel="noreferrer noopener nofollow">[email protected]</a>>'

关于azure - 无法使用给定凭据访问 Azure 专用 SQL 池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71620779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com