【Azure App Service】当App Service中使用系统标识无法获取Access Token时 - LuBu0505/My-Code GitHub Wiki

问题描述

App Serive上的应用配置了系统标识(System Identity),通过系统标识获取到访问Key Vault资源的Access Token。但这次确遇见了无法获取到正常的Access Token。 image.png

验证问题

1:查看App Service的门户中是否启用了系统标识 

image.png

2:进入App Service的Kudu站点,查看Environment参数中

IDENTITY_ENDPOINT = http://127.0.0.1:xxxxx/msi/token/

IDENTITY_HEADER = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx image.png

3:在Kudu站点,通过curl资料,访问IDENTITY_ENDPOINT ,并验证是否可以正常访问

curl -H "X-IDENTITY-HEADER: xxxxxxxxxxxxxxxxxxxxxxxxxxxx" -H "Content-Type: application/json" "http://127.0.0.1:41660/msi/token?resource=https://vault.azure.cn&api-version=2019-08-01" image.png

如果想查看具体的Access Token信息,就可以使用 -o 参数,把请求响应的内容输出到文件中。

如: image.png

 如果第三步中,无法成功获取到Token信息,则需要收集错误信息,然后寻求App Service产品团队支持。

参考资料

How to use managed identities for App Service and Azure Functions : https://learn.microsoft.com/en-us/azure/app-service/overview-managed-identity?tabs=portal%2Chttp

curl --help image.png

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!