问题描述
我正在尝试使用服务主体连接到 Synapse 无服务器池,但在我的 Azure 数据工厂管道中出现以下错误。
Cannot connect to sql Database: 'xxxxx-ondemand.sql.azuresynapse.net',Database: 'synapse_od',User: ''. Check the linked service configuration is correct,and make sure the sql Database firewall allows the integration runtime to access.
Login Failed for user '<token-identified principal>'.,sqlErrorNumber=18456,Class=14,State=1,Activity ID: 2516df76-0215-4f27-990d-3c4654a07704.
**This may happen if your data source only allows secured connections. If that's the case,please use a VNet integration runtime**.
但是可以愉快地使用 sql 身份验证连接。
Service Principal 被授予 Synapse 上的贡献者角色。
任何线索!!!!
解决方法
在我执行以下步骤之后。具有服务主体身份验证类型的链接服务工作正常。
CREATE USER [ad_user_name] FROM EXTERNAL PROVIDER;
EXEC sp_addrolemember db_owner,[ad_user_name];