Tapis.Core.Email
1.0.2
dotnet add package Tapis.Core.Email --version 1.0.2
NuGet\Install-Package Tapis.Core.Email -Version 1.0.2
<PackageReference Include="Tapis.Core.Email" Version="1.0.2" />
<PackageVersion Include="Tapis.Core.Email" Version="1.0.2" />
<PackageReference Include="Tapis.Core.Email" />
paket add Tapis.Core.Email --version 1.0.2
#r "nuget: Tapis.Core.Email, 1.0.2"
#:package Tapis.Core.Email@1.0.2
#addin nuget:?package=Tapis.Core.Email&version=1.0.2
#tool nuget:?package=Tapis.Core.Email&version=1.0.2
Tapis.Core.Email
MailKit tabanlı SMTP gönderici (SmtpEmailSender) ve AddSmtpEmailSender DI kaydı.
Modeller (EmailMessage, SmtpOptions) ve IEmailSender Tapis.Core.Shared içindedir.
Target Framework
- .NET 10
Installation
dotnet add package Tapis.Core.Email
SMTP hedef denetimi (1.0.2)
SmtpHedefDenetimi tenant'ın girdiği SMTP hedefini SSRF'e karşı denetler:
- Port yalnız 25, 465, 587 veya 2525 olabilir (her zaman).
- Host bir kez çözülür (
Dns.GetHostAddressesAsync); çözülen adreslerden biri bile 10/8, 172.16/12, 192.168/16, 127/8, 169.254/16, 0.0.0.0/8, 100.64/10,::1,::, fc00::/7, fe80::/10 ya da bunların IPv4-mapped IPv6 biçimindeyseSmtpHedefReddedildiExceptionfırlatılır. IP biçiminde yazılan host da aynı denetimden geçer. - Platform bayrağı
Smtp:AllowPrivateHosts(tenant ayarı değil) true ise yalnız adres denetimi atlanır; port kısıtı kalır. BaglanAsyncdenetlenen IP'ye kendi soketiyle bağlanır ve MailKit'e verir; host adı TLS/SNI ve sertifika doğrulaması için korunur, DNS rebinding adresi değiştiremez.KayitDenetimiAsync(host, port, izinVerOzelAg)ayar kaydedilirken çağrılır; ürün istisnayı 400'e çevirir.
SmtpEmailSender bu denetimi kendiliğinden uygular: AddSmtpEmailSender(defaultOptions, izinVerOzelAg); ürün bayrağı
configuration.GetValue<bool>("Smtp:AllowPrivateHosts") ile okuyup geçirir. Tenant SMTP'sini kendi MailKit kodu ile
kullanan ürünler SmtpHedefDenetimi.BaglanAsync'i çağırmalıdır.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- MailKit (>= 4.16.0)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- System.Security.Cryptography.Pkcs (>= 10.0.13)
- Tapis.Core.Shared (>= 2.0.22)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
SMTP hedef denetimi (SSRF): SmtpHedefDenetimi (port izin listesi 25/465/587/2525; özel, loopback, link-local, CGNAT ve IPv4-mapped adresler reddedilir; DNS bir kez cozulur, denetlenen IP'ye baglanilir, host adi TLS/SNI icin korunur), KayitDenetimiAsync, SmtpHedefReddedildiException. SmtpEmailSender ve AddSmtpEmailSender(izinVerOzelAg) bunu kullanir; platform bayragi Smtp:AllowPrivateHosts. KIRICI: 25/465/587/2525 disindaki portlar ve ozel aga giden hostlar artik reddedilir. Tapis.Core.Shared 2.0.22 ile birlikte yayimlanir.