Azure - 调试使用托管标识调用 API 的应用

时间:2021-01-29 18:27:03

标签: azure azure-active-directory azure-managed-identity

我有一个应用程序,我计划使用托管身份进行令牌检索以针对 API 进行身份验证。托管身份将被赋予适当的 appRoleAssignment 给底层 API 服务主体角色,我已将其配置为“应用程序”角色类型。为了在我的机器上调试这个应用程序,我需要做什么?我是否必须为我的 Azure 帐户(我在 Visual Studio 中登录的帐户)提供与此角色相同的 appRoleAssignment?如果是这样,那是否意味着我必须使角色成为“用户”和“应用程序”的 allowedMembershipType?这是一个坏主意吗?仅仅为了在本地调试而修改我的角色似乎并不合适。这里推荐的方法是什么?

1 个答案:

答案 0 :(得分:1)

需要相同的应用程序角色,这是毫无疑问的。如果是使用登录VS的用户账号进行身份验证,当然需要将allowedMemberTypes设置为UserApplication

这不是一个坏主意,随意使用它,但如果想避免这种情况,您也可以Register an application with Azure AD and create a service principalcreate a secret,使用它进行身份验证,我更喜欢这种方式。一点是不需要更改allowedMemberTypes,另一点是MSI(托管身份)也是服务主体,这更类似于生产环境。