수색…


단순 인증

asp.net 코어 AuthorizeAttribute 는 단순히 AuthorizeAttribute

[Authorize]
public class SomeController : Controller
{
    public IActionResult Get()
    {
    }

    public IActionResult Post()
    {
    }
}

이렇게하면 로그인 한 사용자 만 이러한 작업에 액세스 할 수 있습니다.

또는 다음을 사용하여 하나의 행동 만 제한하십시오.

public class SomeController : Controller
{
    public IActionResult Get()
    {
    }

    [Authorize]
    public IActionResult Post()
    {
    }
}

모든 사용자가 AllowAnonymousAttribute 를 사용할 수있는 동작 중 하나에 액세스 할 수있게하려면

[Authorize]
public class SomeController: Controller
{
    public IActionResult Get()
    {
    }
    
    [AllowAnonymous]
    public IActionResult Post()
    {
    }
}

이제 Post 는 모든 사용자가 액세스 할 수 있습니다. AllowAnonymous 항상 권한 부여의 우선 순위로 제공되므로 컨트롤러가 AllowAnonymous 로 설정되면 AuthorizeAttribute 가 있는지 여부에 관계없이 모든 액션이 공개됩니다.

승인 된 요청을 요구하도록 모든 컨트롤러를 설정하는 옵션이 있습니다.

services.AddMvc(config =>
{
    var policy = new AuthorizationPolicyBuilder()
        .RequireAuthenticatedUser()
        .Build();
    config.Filters.Add(new AuthorizeFilter(policy));
}) 

이 작업은 각 컨트롤러에 기본 인증 정책을 추가하여 수행됩니다. 컨트롤러 / 동작을 통한 모든 Authorize / AllowAnonymous 속성은이 설정을 무시합니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow