Я создаю приложение, которое создает запланированные задания программно, поэтому я использую REST API, предоставляемый Azure. Мне требуется токен доступа, но когда я аутентифицируюсь, токен доступа, возвращенный из запроса, истекает в то же время, что и он мне.
Идентификатор клиента - это приложение, которое я зарегистрировал в Azure AD и скопировал идентификатор приложения.
Я создал секретный ключ в блейде Keys.
Я использую AzureEnvironment.AzureGlobalCloud.AuthenticationEndpoint/{My Azure ID}
в качестве органа (https://login.microsoftonline.com/)
Я запрашиваю токен доступа для диспетчера ресурсов Azure, используя AzureEnvironment.AzureGlobalCloud.ResourceManagerEndpoint
.
private async Task<string> GetAccessToken()
{
_authContext = new AuthenticationContext($"{AzureEnvironment.AzureGlobalCloud.AuthenticationEndpoint}{ _jobConfig.TenantId}");
var credential = new ClientCredential(_jobConfig.AzureApplicationId, _jobConfig.AzureApplicationSecret);
var authResult = await _authContext.AcquireTokenAsync(AzureEnvironment.AzureGlobalCloud.ResourceManagerEndpoint, credential);
return authResult.AccessToken;
}
_jobconfig
- это экземпляр, содержащий упомянутые выше данные и ссылки в коде.
Отладочные данные