Azure Databricks的Purview扫描报(3805)错误:原因及解决方法
Azure Purview扫描Azure Databricks时403错误的原因及修复方案
错误原因
HTTP 403错误核心是访问被拒绝,结合场景具体可能是以下情况:
- 身份权限不足:用于扫描的身份(服务主体、托管标识或PAT令牌)没有访问Databricks工作区或目标SQL仓库的必要权限
- 网络访问受限:托管集成运行时(Integration Runtime)的服务器无法通过443端口访问Databricks工作区,比如IP被Databricks访问列表拦截,或本地防火墙/NSG规则限制了出站流量
- JDBC配置错误:JDBC URL中的
httpPath路径有误,或认证凭证(令牌、密钥等)无效、权限范围不足
修复步骤
1. 验证扫描身份的权限
- 确认用于扫描的身份已被添加到Databricks工作区,且至少拥有SQL仓库管理员或数据访问者角色,确保能访问目标SQL仓库及对应数据
- 如果使用个人访问令牌(PAT),检查令牌是否未过期,且权限包含
sql/access等必要项
2. 排查网络连通性
- 在托管集成运行时的服务器上,执行
telnet adb-xxxxxxxxxxxxxxxx.11.azuredatabricks.net 443或curl -v https://adb-xxxxxxxxxxxxxxxx.11.azuredatabricks.net测试443端口的连通性,确认能正常访问 - 如果Databricks工作区设置了IP访问列表,将集成运行时的公网IP(或VNet内IP,若为VNet集成IR)添加到允许列表中
- 检查服务器本地防火墙、企业防火墙及NSG规则,确保未阻止到Databricks域名的出站流量
3. 核对JDBC配置细节
- 确认JDBC URL中的
httpPath对应正确的SQL仓库路径:可在Databricks工作区的SQL仓库页面复制官方提供的HTTP路径 - 检查认证配置:
AuthMech=3表示使用Azure AD令牌,需确认服务主体的客户端ID、密钥、租户ID无误;若使用托管标识,需确保Purview的托管标识已被授予Databricks访问权限 - 尝试用第三方JDBC客户端(如DBeaver)使用相同的URL和凭证连接Databricks,验证配置是否正确
内容的提问来源于stack exchange,提问作者nam
相关产品推荐
相关产品推荐

