在 C# 中访问 Azure 中系统托管标识的应用程序 ID
Access application id of a system managed identity in Azure in C#
目前,我们正在开发一个 Azure 应用服务应用程序,它在应用服务设置期间分配了一个系统管理的标识。我们使用带有 RBAC 的托管身份来访问其他 Azure 资源,并且工作正常。
现在我想从底层托管身份获取一些信息以执行一些检查。特别是我想读取分配给此托管身份的应用程序 ID。我想在 C# 中这样做。我如何访问这些信息?
感谢任何帮助。提前致谢。
此致,
统计
var credential = new DefaultAzureCredential();
string[] scopes = new string[] { "https://graph.microsoft.com/.default" };
var token = await credential.GetTokenAsync(new Azure.Core.TokenRequestContext(scopes));
var handler = new JwtSecurityTokenHandler();
var jsonToken = handler.ReadToken(token.Token) as JwtSecurityToken;
var appid = jsonToken.Claims.First(c => c.Type == "appid").Value;
Console.WriteLine(appid);
目前,我们正在开发一个 Azure 应用服务应用程序,它在应用服务设置期间分配了一个系统管理的标识。我们使用带有 RBAC 的托管身份来访问其他 Azure 资源,并且工作正常。
现在我想从底层托管身份获取一些信息以执行一些检查。特别是我想读取分配给此托管身份的应用程序 ID。我想在 C# 中这样做。我如何访问这些信息?
感谢任何帮助。提前致谢。
此致, 统计
var credential = new DefaultAzureCredential();
string[] scopes = new string[] { "https://graph.microsoft.com/.default" };
var token = await credential.GetTokenAsync(new Azure.Core.TokenRequestContext(scopes));
var handler = new JwtSecurityTokenHandler();
var jsonToken = handler.ReadToken(token.Token) as JwtSecurityToken;
var appid = jsonToken.Claims.First(c => c.Type == "appid").Value;
Console.WriteLine(appid);