phy*_*man 12 azure-active-directory azure-web-app-service
有人可以帮助我了解在 AAD 中创建应用注册时创建的服务主体与在应用服务的标识边栏选项卡上启用“系统分配”时创建的托管标识之间的区别吗?
我们有一个正在开发的应用服务,我们已经为其创建了应用注册,并且我们还启用了系统分配的身份。当我们进入 AAD 下的企业应用程序并搜索我们的应用程序时,它会出现 2 个条目。一个用于托管身份,另一个用于作为应用注册的一部分创建的服务主体。我们试图了解我们将使用哪一个来授予应用程序写入 Azure SQL DB 的权限。
托管身份本质上是用 Microsoft 逻辑包装的服务主体,使访问资源更简单。尽管有时添加更多层可能会使事情复杂化,但其想法是使其更容易、更简单且消费者交互更少。
对于您的场景,您需要考虑您想要做什么。您想使用受 AAD 保护的 Azure SQL DB 进行更多控制并实现您自己的逻辑,还是尝试利用 Microsoft 的托管标识来保护/访问 Azure SQL DB 资源。(理想情况下,托管身份路径应该更少工作)
可以在此处找到使用托管身份从应用服务访问 azure SQL 数据库的教程:https : //docs.microsoft.com/en-us/azure/app-service/app-service-web-tutorial-connect -msi
可以在此处找到使用 Azure AD 保护 Azure SQL DB 的文档:https : //docs.microsoft.com/en-us/azure/sql-database/sql-database-aad-authentication
此外,此处的 Microsoft 官方文档中解释了托管身份:https : //docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview
请务必注意,有两种托管身份。
从文档:
系统分配的托管标识直接在 Azure 服务实例上启用。启用标识后,Azure 会为实例订阅信任的 Azure AD 租户中的实例创建一个标识。创建身份后,凭据将供应到实例上。系统分配标识的生命周期与启用它的 Azure 服务实例直接相关。如果实例被删除,Azure 会自动清理 Azure AD 中的凭据和标识。
用户分配的托管标识创建为独立的 Azure 资源。通过创建过程,Azure 在 Azure AD 租户中创建一个受正在使用的订阅信任的标识。创建标识后,可以将标识分配给一个或多个 Azure 服务实例。用户分配的标识的生命周期与其分配到的 Azure 服务实例的生命周期分开管理。
官方文档中的图片也给出了使用 MSI(托管服务标识)的 VM 的一个很好的例子。
除此之外,可以在此处找到应用服务托管标识文档:https : //docs.microsoft.com/en-us/azure/app-service/overview-managed-identity
| 归档时间: |
|
| 查看次数: |
3347 次 |
| 最近记录: |