Month: March 2024

TRT Radyo-3 | Eğlence

TRT Radyo-3 | Eğlence

Merhaba, arabayla bir yerlere giderken genelde popüler radyolardan birisi açık oluyor.Bu tür radyolarda da o dönemin revaçta olan parçaları çalıyor sürekli.Hani işletim sisteminde IDLE şeklinde ifade edilen bir zaman oluyor, işte beynimde de böyle zamanlarda arka planda bu parçalar dönüp duruyor.:)Bundan kurtulmak adına sözsüz parçalar 

Sql Server 2016 Mail Gönderim Hatası | MsSql

Sql Server 2016 Mail Gönderim Hatası | MsSql

Merhaba, uzunca bir süredir sorunsuz çalışan Sql Server mail gönderimi birden çalışmamaya başladı. Mail loglarına baktım anlamlı bir şeyler yazmıyordu: Şu hatadan pek bir şey anlaşılmadığından GOOGLE ve bilumum alternatif seçeneklerden aramalara başladım. İlk ipucu olarak TLS 1.2’yi aktifleştirmek gerektiğine dair ipuçları yakaladım. https://blog.sunucupark.com/genel/9-blog/103-windows-server-tls-aktiflestirme-ayarlari.html Aşağıdaki 

.Net Core API IP Kısıtlama | C#

.Net Core API IP Kısıtlama | C#

Merhaba, .net Core ile yazdığım bir API’de sadece belirli IP adreslerinden gelen istekler işlensin istedim.

Şu şekilde yapıldığını öğrendim ve uyguladım, çalıştı.

public interface IIpBlockingService
{
	bool IsAllowed(IPAddress ipAddress);
}

public class IpBlockingService : IIpBlockingService
{
	private readonly List<string> _allowedIps;
	public IpBlockingService(IConfiguration configuration)
	{
		_allowedIps = configuration.GetValue<string>("ApplicationOptions:Whitelist").Split(';').ToList();
	}
	public bool IsAllowed(IPAddress ipAddress) => _allowedIps.Contains(ipAddress.ToString());
}

public class IpBlockMiddleware
{
	private readonly RequestDelegate _next;
	private readonly IIpBlockingService _blockingService;
	public IpBlockMiddleware(RequestDelegate next, IIpBlockingService blockingService)
	{
		_next = next;
		_blockingService = blockingService;
	}
	public async Task Invoke(HttpContext context)
	{
		IPAddress remoteIp = context.Connection.RemoteIpAddress;
		bool isAllowed = _blockingService.IsAllowed(remoteIp!);
		if (!isAllowed)
		{
			context.Response.StatusCode = (int)HttpStatusCode.Forbidden;
			return;
		}
		await _next.Invoke(context);
	}
}

Program.cs içine şunları eklemeliyiz:


....
builder.Services.AddTransient<IIpBlockingService, IpBlockingService>();
...
...
app.UseMiddleware<IpBlockMiddleware>();
.....

appsettings.json dosyası da şu şekilde olabilir:

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",
  "ApplicationOptions": {
    "Whitelist": "111.111.111.111;222.222.222.222" 
  },
  "AmazonBaglanti": {
    "RefreshToken": "ccc"
  }
}

Selamlar.