在Azure中,我有一个工作逻辑应用程序,该应用程序具有使用HTTP步骤调用WebAPI终结点的托管身份。现在将端点修饰为AllowAnonymous。但是我希望获得令牌/声明。如果万一它们是由逻辑应用程序添加的。所以我想知道的是Logic App添加的令牌(bearer,jwt)?并且一些示例代码可以帮助他们。
[AllowAnonymous]
[HttpPost]
[Route("API/datatest/handle/{Id}")]
public async Task<HttpResponseMessage> HandleAsync(Data data, string Id)
{
//get to the token/claims here.
}
//or by attribute.
[GetLoginAppTokenData]
[HttpPost]
[Route("API/datatest/handle/{Id}")]
public async Task<HttpResponseMessage> HandleAsync(Data data, string Id)
{
//do moreenter code here
}
答案 0 :(得分:1)
1。转到逻辑应用程序> Identity
>转到on
已分配系统。
2。转到Web应用程序> Authentication / Authorization
>开启Azure Active Directory身份验证提供程序。请参阅此article。
3。转到Web应用程序> Access Control(IAM)
>添加> Add role assignment
,将Contributor
之类的角色添加到逻辑应用程序的服务主体中。
4。转到逻辑应用designer
添加Http
连接器以使用托管身份对访问进行身份验证。
将Authentication
设置为Managed Identity
,并将Audience
添加为在天蓝色广告中注册的Web应用程序clientId
。
然后,您可以使用Logic App MSI访问Webapp。有关更多详细信息,请参阅此article。