I am creating a Web Api 2 application using Thinktecture.IdentityModel.Owin.ResourceAuthorization , I was taking a look at the source code and I realized I wanted to change the properties available on my ResourceAuthorizationContext , I would like to create a custom Context and use it for everything related to ResourceAuthorization. That way I could add custom properties to be available for my CheckAccessAsync method.

My goal is to have something like this:

public class CustomAuthorizationManager : ResourceAuthorizationManager
{
    public override Task<bool> CheckAccessAsync(CustomResourceAuthorizationContext context)
    {
        // Access my custom properties coming directly from the context
    }
}

So I could use a CustomAttribute like this:

[CustomResourceAuthorize("CustomValue", "MoreCustomValues")]
public class ValuesController : ApiController
{
}

I couldn't figure out a way to customize the Context, like I do with the ResourceAuthorizationManager, at the startup.
The problem seems to be these extension methods, they reference the ResourceAuthorizationContext class directly.

Am I missing something or you really can't do this?

0

There are 0 best solutions below