使用授权过滤器.net核心访问图像

时间:2020-08-08 14:53:36

标签: security asp.net-core asp.net-web-api

我需要使用<img src="">标签显示图片。我将文件存储在静态文件夹中

使用 asp.net core 3.1 Web API 访问图像位置,

问题是,一旦我使用api获得了图像路径,任何人都可以直接访问图像而无需使用任何访问令牌。

如何使用访问令牌限制图像路径?

1 个答案:

答案 0 :(得分:0)

要保护文件,您需要对请求应用授权。 Microsoft建议为此使用控制器操作。示例from the docs

[Authorize]
public IActionResult BannerImage()
{
    var filePath = Path.Combine(
        _env.ContentRootPath, "MyStaticFiles", "images", "red-rose.jpg");

    return PhysicalFile(filePath, "image/jpeg");
}