我们有一系列的API,这些API托管在Azure App Services中,并受ASP.NET Core中间件保护。
导航到URL时,我们使用Swagger列出端点。而且,如果您拥有有效的令牌,则可以调用端点。
我们要保护整个URL,因此只有Azure AD中的用户才能访问该站点并查看终结点。
我当时认为我们可以通过将Easy Auth设置为使用Azure Active Directory登录来实现。
1:此设置对中间件有影响吗? 还是仅充当保护的“第一层”,并且仅在首先由Azure AD进行身份验证时才转发请求?
2:还有另一种(更好)的方法来解决这种情况吗?
(我想我们还需要将allowedAudiences / domain_hint设置为我们自己的广告)
答案 0 :(得分:0)
它将是(1),充当第一层,并且仅当用户已通过您在App Service的“身份验证/授权”刀片中配置的任何机制进行身份验证时,才转发请求。
关于第二个问题,这实际上取决于您需要的粒度。如果每个API调用都需要授权,那么使用Easy Auth不会出现任何问题。但是,有理由吗,因为已经配置了中间件,为什么使用[Authorize]
不再足够?