in sovereignApplications/confidential/contosoHR/src/Startup.cs [97:119]
private static async Task<string> GetUserObjectFromImdsAsync()
{
string connectionString = string.Empty;
using (var httpClient = new HttpClient())
{
// IMDS requires bypassing proxies.
WebProxy proxy = new WebProxy();
HttpClient.DefaultProxy = proxy;
httpClient.DefaultRequestHeaders.Add("Metadata", "True");
try
{
var b64connString = await httpClient.GetStringAsync("http://169.254.169.254/metadata/instance/compute/userData?api-version=2021-01-01&format=text");
var b64Bytes = Convert.FromBase64String(b64connString);
return Encoding.UTF8.GetString(b64Bytes);
}
catch (AggregateException ex)
{
// Handle response failures
Console.WriteLine("Request failed: " + ex.GetBaseException());
}
}
return connectionString;
}