You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Purview扫描Azure SQL托管实例失败,请求排查解决

问题排查与解决建议

核心原因分析

报错明确指出需要访问master数据库来枚举实例内的数据库列表——哪怕你仅指定扫描单个数据库,Purview在扫描初始化阶段也必须先连接master库获取元数据,当前你的托管标识myPurview缺少该库的访问权限,这是扫描失败的关键。

具体排查点及修复步骤

1. 补全master库的AAD登录权限

  • 用SSMS连接到SQL托管实例,切换到master数据库
  • 执行以下SQL确认myPurview是否已在master库创建登录:
    SELECT name FROM sys.server_principals WHERE type = 'E' AND name = 'myPurview';
    
  • 若结果为空,需创建AAD登录并授予必要权限:
    -- 创建托管标识的AAD登录
    CREATE LOGIN [myPurview] FROM EXTERNAL PROVIDER;
    -- 授予枚举数据库的最低权限
    GRANT VIEW ANY DATABASE TO [myPurview];
    

2. 验证目标库的用户映射正确性

  • 切换到AdventureWorksLT2019数据库,执行SQL确认用户与登录的映射关系:
    SELECT name FROM sys.database_principals WHERE type = 'E' AND name = 'myPurview';
    
  • 若不存在对应用户,需创建并关联登录:
    CREATE USER [myPurview] FROM LOGIN [myPurview];
    -- 确保已加入db_datareader角色(可重复执行验证)
    EXEC sp_addrolemember 'db_datareader', 'myPurview';
    

3. 检查扫描配置细节

  • 在Purview扫描设置中,确认已选择特定数据库并准确填写AdventureWorksLT2019,避免误选“所有数据库”选项(除非你需要扫描全部且已配置对应权限)

4. 确认公共端点访问规则

  • 检查SQL托管实例的公共端点防火墙规则,确保允许Purview托管标识所在的网络访问
  • 确认实例的Allow public endpoint access已设置为Yes

验证操作

完成配置后,可先在SSMS中使用myPurview托管标识连接master库,确认能正常访问并看到数据库列表,再重新触发Purview扫描。

内容的提问来源于stack exchange,提问作者nam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 07:00:57