【问题标题】:Allow anonymous Authentication based on policy in ASP.NET Core允许基于 ASP.NET Core 中的策略的匿名身份验证
【发布时间】:2020-04-14 09:01:34
【问题描述】:

我有一项服务,允许匿名(未经身份验证的)用户检索https://myService.com/data?date={utc.yesterday},但在某些情况下,https://myService.com/data?date={utc.today} 仅允许经过身份验证的用户使用。

基本上,管理员需要先批准预览数据,然后匿名用户才能看到它。批准是通过另一个 api 进行的,与此问题无关。

我如何设置授权政策,当我们的数据库表明此数据尚未获得批准时,这可能会导致挑战。是否可以在策略授权时强制执行身份验证?

【问题讨论】:

    标签: azure asp.net-core azure-active-directory


    【解决方案1】:

    我尝试做类似的事情,但根据定义,授权机制需要经过身份验证的用户。因此,在我的 ASP.NET Core 中,我最终通过在控制器中手动进行检查并返回 NOT AUTHORIZE 代码。

    您可以 1) 创建一个服务来检查数据库中的参数,2) 将其注入控制器构造函数中,3) 进行检查 if (service.IsFeatureEnabled())。确保资源对经过身份验证的用户和匿名用户都允许。

    【讨论】:

      猜你喜欢
      • 2021-08-22
      • 2018-04-30
      • 2011-04-16
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      • 2021-03-23
      • 2022-12-21
      相关资源
      最近更新 更多