我有一个应用程序,我计划使用托管身份进行令牌检索以针对 API 进行身份验证。托管身份将被赋予适当的 appRoleAssignment 给底层 API 服务主体角色,我已将其配置为“应用程序”角色类型。为了在我的机器上调试这个应用程序,我需要做什么?我是否必须为我的 Azure 帐户(我在 Visual Studio 中登录的帐户)提供与此角色相同的 appRoleAssignment?如果是这样,那是否意味着我必须使角色成为“用户”和“应用程序”的 allowedMembershipType?这是一个坏主意吗?仅仅为了在本地调试而修改我的角色似乎并不合适。这里推荐的方法是什么?
答案 0 :(得分:1)
需要相同的应用程序角色,这是毫无疑问的。如果是使用登录VS的用户账号进行身份验证,当然需要将allowedMemberTypes
设置为User
和Application
。
这不是一个坏主意,随意使用它,但如果想避免这种情况,您也可以Register an application with Azure AD and create a service principal和create a secret,使用它进行身份验证,我更喜欢这种方式。一点是不需要更改allowedMemberTypes
,另一点是MSI(托管身份)也是服务主体,这更类似于生产环境。