У меня есть способ получить токен из Azure с использованием ClientID , TenantID и AADAppPassword
Это отлично работает, но теперь мне нужно переключиться на другой AAD AppID и использовать отпечаток сертификата или сертификат pfx . Я не хочу менять свои 1000+ строк кода.
Может ли кто-нибудь помочь мне получить токен так же, как я использую метод ниже, но вместо этого используйте отпечаток сертификата , который возвращает токен , чтобы я мог вызвать прямо перед вызовом rest API.
public static async Task<string> GetAccessToken(string tenantId, string clientId, string clientKey)
{
string authContextURL = "https://login.windows.net/" + tenantId;
var authenticationContext = new AuthenticationContext(authContextURL);
var credential = new ClientCredential(clientId, clientKey);
var result = await authenticationContext
.AcquireTokenAsync("https://management.azure.com/", credential);
if (result == null)
{
throw new InvalidOperationException("Failed to obtain the JWT token");
}
string token = result.AccessToken;
return token;
}