问题描述

当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】

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

  1. 【Azure 应用服务】App Service中运行Python 编写的 Jobs,怎么来安装Python包 (pymssql)呢?

    问题描述 在App Service中运行Python编写的定时任务,需要使用pymssql连接到数据库,但是发现使用 python.exe -m pip install --upgrade -r re ...

  2. 【Azure 应用服务】App Service中,为Java应用配置自定义错误页面,禁用DELETE, PUT方法

    问题定义 使用Azure应用服务(App Service),部署Java应用,使用Tomcat容器,如何自定义错误页面呢?同时禁用DELETE, PUT方法 解决办法 如何自定义错误页面呢?需要在 J ...

  3. 【Azure 应用服务】App Service/Azure Function的出站连接过多而引起了SNAT端口耗尽,导致一些新的请求出现超时错误(Timeout)

    问题描述 当需要在应用中有大量的出站连接时候,就会涉及到SNAT(源地址网络转换)耗尽的问题.而通过Azure App Service/Function的默认监控指标图表中,却没有可以直接查看到SNA ...

  4. 【Azure 应用服务】App Service 运行状况健康检查功能简介 (Health check)

    通过Azure App Service门户,启用Health Check来监视应用服务的实例,当发现其中一个实例处于不健康(unhealthy)状态时,通过重新路由(即把有问题的实例从负载均衡器中移除 ...

  5. 【Azure 应用服务】App Service For Container 配置Nginx,设置/home/site/wwwroot/目录为启动目录,并配置反向代理

    问题描述 通过Docker Desktop for Linux,配置Nginx镜像后,自定义nginx.conf文件,修改启动目录和对 /out 路径的反向代理到博客园的博文地址 (https://w ...

  6. 【Azure 应用服务】App Service For Linux 部署PHP Laravel 项目,如何修改首页路径为 wwwroot\public\index.php

    问题描述 参考官方文档部署 PHP Laravel 项目到App Service for Linux环境中,但是访问应用时候遇见了500 Server Error 错误. 从部署的日志中,可以明确看出 ...

  7. 【Azure 应用服务】App Service For Linux 如何在 Web 应用实例上住抓取网络日志

    问题描述 在App Service For Windows的环境中,我们可以通过ArmClient 工具发送POST请求在Web应用的实例中抓取网络日志,但是在App Service For Linu ...

  8. 【Azure 应用服务】App Service频繁出现 Microsoft.WindowsAzure.Diagnostics.DiagnosticMonitorTraceListener 异常分析

    问题描述 在使用App Service的过程中,发现应用频繁出现503错误,通过Kudu站点获取到Logfiles. 在 Eventlog.xml 文件中,发现大量的 Microsoft.Window ...

  9. 【Azure 应用服务】App Service .NET Core项目在Program.cs中自定义添加的logger.LogInformation,部署到App Service上后日志不显示Log Stream中的问题

    问题描述 在.Net Core 5.0 项目中,添加 Microsoft.Extensions.Logging.AzureAppServices 和 Microsoft.Extensions.Logg ...

  10. 【Azure 应用服务】App Service For Windows 环境中部署Python站点后,如何继续访问静态资源文件呢(Serving Static Files)?

    问题描述 当创建一个App Service 后,运行时环境和版本选择Windows 和 Python 3.6. 登录Kudu 站点查看,默认的文件有 web.config, hostingstart- ...

随机推荐

  1. vue混入mixin

    <div id="app"> --{{nick11}} </div> <script> // 全局混入 不需要注册 var m1 = Vue.m ...

  2. 为游戏接入ios sdk的oc学习笔记

    开发手机游戏,需要接入ios的sdk,截止2021年7月23日虽然swift已经推出一些年头,但对于大部分的渠道sdk,还是oc的代码. oc不仅仅用来开发ios,还是mac上的app开发语言 从新手 ...

  3. 大语言模型的预训练4:指示学习Instruction Learning详解以及和Prompt Learning,In-content Learning区别

    大语言模型的预训练[4]:指示学习Instruction Learning:Entailment-oriented.PLM oriented.human-oriented详解以及和Prompt Lea ...

  4. 3.1 DLL注入:常规远程线程注入

    动态链接库注入技术是一种特殊的技术,它允许在运行的进程中注入DLL动态链接库,从而改变目标进程的行为.DLL注入的实现方式有许多,典型的实现方式为远程线程注入,该注入方式的注入原理是利用了Window ...

  5. 路由react-router-dom的使用

    react-router-dom路由简介 现代的前端页面大多是SPA(单页面应用程序), 也就是只有一个HTML页面的程序,这样用户体验好,服务器压力小,所以更受欢迎.路由是使用单页面来管理原来多页面 ...

  6. 模式识别实验:基于主成分分析(PCA)的人脸识别

    前言 本文使用Python实现了PCA算法,并使用ORL人脸数据集进行了测试并输出特征脸,简单实现了人脸识别的功能. 1. 准备 ORL人脸数据集共包含40个不同人的400张图像,是在1992年4月至 ...

  7. Rating 算法

    Rating 算法 这是一种 OJ 常用的算法,下面进行介绍 公式 $ Rating $ 的计算公式如下: $ Rating = R + K(P - E) $ 这里 $ R $ 表示当前 $ Rati ...

  8. 小知识:统计Oracle的日归档量

    首先这对于Oracle DBA来说是个初级问题,即使不熟悉的初级DBA也可以快速在网上搜索到现成的SQL语句. 网上搜到的查询SQL基本类似这样的逻辑: select trunc(completion ...

  9. ASP.NET Core分布式项目实战(课程介绍,MVP,瀑布与敏捷)--学习笔记

    任务1:课程介绍 课程目标: 1.进一步理解 ASP.NET Core 授权认证框架.MVC 管道 2.掌握 Oauth2,结合 Identity Sercer4 实现 OAuth2 和 OpenID ...

  10. win10远程桌面连接,使用正确的用户名和密码仍然不能成功连接

    最近笔记本重置后,台式使用"远程桌面连接"远程笔记本失败了,总是提示"登录没有成功". 开始自查:win10专业版,允许远程的相关设置也都开了,连接的ip正确, ...