Add proper creds
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -5,6 +5,7 @@
|
||||
!.vscode/launch.json
|
||||
!.vscode/extensions.json
|
||||
!.vscode/*.code-snippets
|
||||
.idea/*
|
||||
|
||||
# Local History for Visual Studio Code
|
||||
.history/
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
using Azure.ResourceManager;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace ProperDI.Azure.Endpoints.ResourceGroup.LogLooker;
|
||||
@@ -7,24 +8,21 @@ public interface IActivityLogReader
|
||||
Task Scan(CancellationToken cancellationToken);
|
||||
}
|
||||
|
||||
public class ActivityLogReader : IActivityLogReader
|
||||
public class ActivityLogReader(
|
||||
ILogger<ActivityLogReader> logger,
|
||||
ArmClient armClient)
|
||||
: IActivityLogReader
|
||||
{
|
||||
private readonly ILogger<ActivityLogReader> _logger;
|
||||
private readonly HttpClient _httpClient;
|
||||
|
||||
public ActivityLogReader(IHttpClientFactory httpClientFactory, ILogger<ActivityLogReader> logger)
|
||||
{
|
||||
_httpClient = httpClientFactory.CreateClient() ?? throw new ArgumentNullException(nameof(httpClientFactory));
|
||||
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
|
||||
}
|
||||
private readonly ILogger<ActivityLogReader> _logger = logger ?? throw new ArgumentNullException(nameof(logger));
|
||||
private readonly ArmClient _armClient = armClient ?? throw new ArgumentNullException(nameof(armClient));
|
||||
|
||||
public async Task Scan(CancellationToken cancellationToken)
|
||||
{
|
||||
try
|
||||
{
|
||||
var response = await _httpClient.GetAsync("https://ident.me", cancellationToken);
|
||||
var responseBody = await response.Content.ReadAsStringAsync();
|
||||
_logger.LogInformation("Response body: {content}", responseBody);
|
||||
_logger.LogInformation("Scanning for resources");
|
||||
var resp = await _armClient.GetDefaultSubscriptionAsync(cancellationToken);
|
||||
_logger.LogInformation("Found default subscription {sub}", resp.Data.DisplayName);
|
||||
}
|
||||
catch (TaskCanceledException)
|
||||
{
|
||||
|
||||
19
Program.cs
19
Program.cs
@@ -1,4 +1,8 @@
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Azure.Identity;
|
||||
using Azure.ResourceManager;
|
||||
using Azure.ResourceManager.Resources;
|
||||
using Microsoft.Extensions.Azure;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using ProperDI.Azure.Endpoints.ResourceGroup.LogLooker;
|
||||
|
||||
@@ -6,6 +10,19 @@ HostApplicationBuilder builder = Host.CreateApplicationBuilder(args);
|
||||
|
||||
builder.Services.AddHttpClient();
|
||||
builder.Services.AddTransient<IActivityLogReader, ActivityLogReader>();
|
||||
builder.Services.AddAzureClients(clientBuilder =>
|
||||
{
|
||||
// var creds = new ClientSecretCredential(
|
||||
// "",
|
||||
// "",
|
||||
// "");
|
||||
clientBuilder.UseCredential(new DefaultAzureCredential());
|
||||
clientBuilder.AddArmClient("2690a5f1-155b-4fa8-896f-92c6bcb62bee");
|
||||
clientBuilder.ConfigureDefaults(client =>
|
||||
{
|
||||
client.Retry.MaxRetries = 3;
|
||||
});
|
||||
});
|
||||
|
||||
builder.Services.Configure<RoleAssesorBackgroundServiceOptions>(builder.Configuration.GetSection("RoleAssessorBackgroundService"));
|
||||
builder.Services.AddHostedService<RoleAssesorBackgroundService>();
|
||||
|
||||
@@ -8,6 +8,10 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Azure.Identity" Version="1.12.1" />
|
||||
<PackageReference Include="Azure.ResourceManager" Version="1.13.0" />
|
||||
<PackageReference Include="Azure.ResourceManager.Resources" Version="1.9.0" />
|
||||
<PackageReference Include="Microsoft.Extensions.Azure" Version="1.7.6" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.1" />
|
||||
<PackageReference Include="Microsoft.Extensions.Http" Version="8.0.1" />
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
}
|
||||
},
|
||||
"RoleAssessorBackgroundService": {
|
||||
"RunFrequencyInMinutes": 1
|
||||
}
|
||||
"RunFrequencyInMinutes": 12
|
||||
},
|
||||
"DefaultSubscriptionId": "2690a5f1-155b-4fa8-896f-92c6bcb62bee"
|
||||
}
|
||||
Reference in New Issue
Block a user