7

MVC uygulamasında belirli bir bölümü güvenli hale getirmek istiyorsam, ActionMethod için [Authorize] kullanıyorum. Ayrıca tüm denetleyici için kullanabileceğimi de biliyorum, böylece her ActionMethod için bunu belirtmem gerekmiyor.Tüm ASP.NET 5 MVC 6 uygulamasının güvenliğini sağlama

Tüm dünyada yetkilendirilmek istiyorum ve yalnızca birkaç yerde anonim kullanıcılara izin vermek istiyorum. Kullanıcıların global olarak yetkili olmalarını ve birkaç ActionMethods uygulamasında anonim kullanıcılara nasıl izin vermelerini isterim?

cevap

9

Sadece global Startup.cs içinde AuthorizeFilter kayıt olabilirsiniz:

public void ConfigureServices(IServiceCollection services) 
{ 
    // configure/build your global policy 
    var policy = new AuthorizationPolicyBuilder() 
          .RequireAuthenticatedUser() 
          .Build(); 

    services.AddMvc(x => x.Filters.Add(new AuthorizeFilter(policy))); 
} 

Startup sınıfında ...

4

İşte yanıtı (gerçek politika bina bitleri Sam'in kendi cevap @ alındı), ConfigureServices yöntem:

public void ConfigureServices(IServiceCollection services) 
     { 
      // Add framework services. 
      services.AddMvc(options => 
      { 
       options.Filters.Add(new AuthorizeFilter(new AuthorizationPolicyBuilder().RequireAuthenticatedUser().Build())); 
      }); 
     } 
+0

Yanıtımı doğru olarak işaretlediğinizden. Politika oluşturucunuzun ilgili kısmını da yanıtıma ekledim. – haim770

İlgili konular