gpt4 book ai didi

c# - 通过 AD 服务主体进行 Azure SQL 身份验证

转载 作者:行者123 更新时间:2023-12-03 02:50:57 25 4
gpt4 key购买 nike

我有一个直接连接到 SQL 服务器的 Windows 客户端应用程序。我现在正在使用 SQL Server 身份验证,但我想替换它以提高安全性。 (我不想将凭据与应用程序一起部署)

我想使用 Azure AD 提供对应用程序的访问(并将访问 token 转发到数据库)

我想要的设置如下:我有一个 Azure AD 应用程序注册(服务主体)。- 我分配单独使用该应用程序的权限 --> 企业应用程序 --> 需要用户分配 --> 是- 我向 SQL 数据库上的应用程序(服务主体)授予权限。- 我现在可以做的是作为登录用户访问数据库(API 权限 Azure SQL Server --> user_impersonation),但这意味着我必须直接向数据库上的所有个人用户授予访问权限。我想作为应用程序访问数据库。

这可能吗?如果可以,如何实现?

现在,我可以使用 ADAL 作为服务主体连接到数据库,但随后我必须为服务主体创建客户端 key 并将其与应用程序一起部署 --> 不安全。或者,我可以将 MSAL 与 user_delegation 结合使用,并以登录用户身份访问数据库,但这意味着我必须让他直接访问数据库,并且他可以通过应用程序(即在 MSSMS 中)以另一种方式访问​​它。

最佳答案

看起来您想要使用的是托管身份。

这里有一个教程:https://learn.microsoft.com/en-gb/azure/app-service/app-service-web-tutorial-connect-msi

我应该警告您,此托管身份功能是新的,您需要小心您的应用程序使用的 .Net 框架版本。某些 Azure 应用服务和其他资源尚未更新为支持托管标识的 .Net 框架(据我所知)。

关于c# - 通过 AD 服务主体进行 Azure SQL 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56165541/

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