【Azure App Service】当App Service中使用系统标识无法获取Access Token时

发布时间 2023-12-18 21:17:01作者: 路边两盏灯

问题描述

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

 

验证问题

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

 

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

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

IDENTITY_HEADER = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

 

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"

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

如:

 

 如果第三步中,无法成功获取到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