如何生成过期时间为10分钟的Azure托管身份令牌?
生成短有效期Azure托管身份令牌的方法
答案是肯定的:可以生成有效期为10分钟的Azure托管身份令牌,既可以直接修改你现有的curl命令实现,也有其他可选方案。
一、修改现有curl命令实现
Azure实例元数据服务(IMDS)支持通过duration参数指定令牌有效期(单位为秒),直接把这个参数追加到请求URL的查询串里就行。修改后的命令如下:
/usr/bin/curl --noproxy '*' --connect-timeout 3 'http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://storage.azure.com/&duration=600' -H 'Metadata:true'
注意:
duration的取值范围是300秒(5分钟)到86400秒(24小时),10分钟对应的600秒在合法范围内- 这个参数适用于包括Azure存储在内的大部分支持短生命周期令牌的Azure服务
二、其他可选方案
如果需要更灵活的令牌管理,还可以用以下方式:
- Azure CLI:用
az account get-access-token命令加上--expires-in参数指定有效期,示例:az account get-access-token --resource https://storage.azure.com/ --expires-in 600 - Azure PowerShell:用
Get-AzAccessTokencmdlet指定-ExpiresIn参数,示例:Get-AzAccessToken -ResourceUrl https://storage.azure.com/ -ExpiresIn 600
内容的提问来源于stack exchange,提问作者user713918
相关产品推荐
相关产品推荐

