Azure AppService到AppService调用的托管身份

时间:2018-11-09 17:33:36

标签: azure-active-directory azure-web-sites azure-msi

我正在探索为Azure应用服务中托管的REST API实施托管身份的可能性。该Api使用了多个第三方API,这些API在我们的控制范围之外,并由AAD保护。

当前,我们在配置中存储AAD ApplicationId / Secret。每当我们需要使用任何第三方API时,我们都会遵循以下过程-

  1. 使用ApplicationId和Secret生成令牌
  2. 使用标头中的令牌调用第三方API
  3. 在通话期间检查令牌中的clientId是否获得授权

在这种情况下,我可以使用托管身份吗? 这是否需要更改任何API的代码? 我可以访问第三方API附带的ClientId进行授权吗?

1 个答案:

答案 0 :(得分:0)

AFAIK,您可能无法通过MSI做到这一点,MSI用于让App服务/功能应用访问其他天蓝色资源。如果启用Web应用程序的MSI,它将仅自动创建服务主体,而无需AD App。

  

是否有办法找出受管身份管理的SPN的ClientId?

可能的是,导航到Azure Active Directory中的企业应用程序->搜索Web应用程序的名称(您需要使用Application Type来指定All Applications筛选器)->在Properties中,您可以找到所需的Application ID,也称为ClientID

但是,即使可以找到它,也将无法生成服务主体的秘密。我认为您只能使用AD App(应用程序注册)来做到这一点。