Authorization removed (ARCH344)
Anahtar dotnet.security.authorization-removed · Önem error · Kategori security · CWE CWE-862
Yalnız merge request’lerde. Değişen her endpoint’i hedef daldaki haliyle karşılaştırır ve korumasını kaybedeni işaretler: controller’da kaldırılan [Authorize] ya da özel yetki attribute’u, eklenen [AllowAnonymous], düşürülen rol/policy/izin veya yetkiyi taşıyan base sınıftan çıkılması; minimal API’de mapping’den, MapGroup’tan ya da handler’dan kaldırılan veya daraltılan RequireAuthorization ya da eklenen AllowAnonymous; FastEndpoints’te eklenen AllowAnonymous ya da düşürülen Roles/Policies/Permissions/Claims. Açık bir endpoint tek başına bulgu değildir; onu açan değişiklik bulgudur. Global ya da fallback yetki policy’si varken düz bir [Authorize] kaldırılması bir şey değiştirmez ve raporlanmaz.
Yanlış
Bölüm başlığı “Yanlış”[ApiController][Route("api/orders")]public class OrdersController : ControllerBase{ [Authorize(Policy = "orders.delete")] [HttpDelete("{id}")] public IActionResult Delete(int id) => NoContent();}[ApiController][Route("api/orders")]public class OrdersController : ControllerBase{ [Authorize(Policy = "orders.delete")] [HttpDelete("{id}")] public IActionResult Delete(int id) => NoContent();}