【Azure 应用服务】在App Service 中如何通过Managed Identity获取访问Azure资源的Token呢? 如Key Vault

简介: 【Azure 应用服务】在App Service 中如何通过Managed Identity获取访问Azure资源的Token呢? 如Key Vault

当App Service启用了Managed Identity后,Azure中的资源就可以使用此Identity访问。 如果需要显示的获取这个Token,如何实现呢?

 

问题解答

在App Service开启托管标识之后,会生成两个环境变量IDENTITY_ENDPOINT和IDENTITY_HEADER:

  • IDENTITY_ENDPOINT - 本地令牌服务的 URL。是一个本地 URL,应用可从其请求令牌。
  • IDENTITY_HEADER - 用于帮助缓解服务器端请求伪造 (SSRF) 攻击的标头。 该值由平台轮换。

在根据《App Service 托管标识》的介绍,可以通过多种方式获取到对Azure资源的Token。如 HTTP GET, .NET, Java, PowerShell等。

 

这里就通过App Service Kudu工具,发送 curl 请求,快速获取 Access Token。

第一步:在kudu中执行set指令,获取当前环境中是有的参数设置,从中找到 IDENTITY_ENDPOINT 和 IDENTITY_HEADER  

 

 

第二步:发送curl 请求,获取Access Token

curl -v "<IDENTITY_ENDPOINT>?resource=https://vault.azure.cn&api-version=2019-08-01" -H "X-IDENTITY-HEADER:<IDENTITY_HEADER>"

注意

1)<IDENTITY_ENDPOINT> 需要用正确的值替换,如:http://127.0.0.1:41723/MSI/token/, 在 token后面必须添加反斜杠( / ),不可以省略。

2) resource=https://vault.azure.cn ,resource的url可以根据需要访问的资源进行替换。

3) <IDENTITY_HEADER> 需要正确的值进行替换。

请求返回Body中,包含access_token内容。

 

参考文档

如何使用应用服务和 Azure Functions 的托管标识: https://docs.azure.cn/zh-cn/app-service/overview-managed-identity?tabs=portal%2Chttp

 

【end】

相关文章
|
14天前
|
缓存 容器 Perl
【Azure Container App】Container Apps 设置延迟删除 (terminationGracePeriodSeconds) 的解释
terminationGracePeriodSeconds : 这个参数的定义是从pod收到terminated signal到最终shutdown的最大时间,这段时间是给pod中的application 缓冲时间用来处理链接关闭,应用清理缓存的;并不是从idel 到 pod被shutdown之间的时间;且是最大时间,意味着如果application 已经gracefully shutdown,POD可能被提前terminated.
|
17天前
|
Java 开发工具 Windows
【Azure App Service】在App Service中调用Stroage SDK上传文件时遇见 System.OutOfMemoryException
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
|
18天前
|
安全 Apache 开发工具
【Azure App Service】在App Service上关于OpenSSH的CVE2024-6387漏洞解答
CVE2024-6387 是远程访问漏洞,攻击者通过不安全的OpenSSh版本可以进行远程代码执行。CVE-2024-6387漏洞攻击仅应用于OpenSSH服务器,而App Service Runtime中并未使用OpenSSH,不会被远程方式攻击,所以OpenSSH并不会对应用造成安全风险。同时,如果App Service的系统为Windows,不会受远程漏洞影响!
|
2月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
563 7
|
2月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
684 1
|
28天前
|
小程序 数据挖掘 UED
开发1个上门家政小程序APP系统,都有哪些功能?
在快节奏的现代生活中,家政服务已成为许多家庭的必需品。针对传统家政服务存在的问题,如服务质量不稳定、价格不透明等,我们历时两年开发了一套全新的上门家政系统。该系统通过完善信用体系、提供奖励机制、优化复购体验、多渠道推广和多样化盈利模式,解决了私单、复购、推广和盈利四大痛点,全面提升了服务质量和用户体验,旨在成为家政行业的领导者。
|
2月前
|
JavaScript 前端开发 小程序
uniapp一个人开发APP关键步骤和考虑因素
uniapp一个人开发APP关键步骤和考虑因素
135 1
uniapp一个人开发APP关键步骤和考虑因素
|
2月前
|
JavaScript 前端开发 UED
Vue与uni-app开发中通过@font-face巧妙引入自定义字体
Vue与uni-app开发中通过@font-face巧妙引入自定义字体
92 9
|
2月前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
215 1
|
25天前
|
机器人
布谷直播App系统源码开发之后台管理功能详解
直播系统开发搭建管理后台功能详解!

热门文章

最新文章