在 MS Azure 中,条件访问是否适用于以编程方式/非交互方式(例如使用 ADAL 或通过 token 端点手动)获取应用程序的访问 token 的场景?
我在 Azure 中有一个 Web 应用程序,配置了 Azure AD 身份验证/轻松身份验证,并应用了/针对该应用程序的条件访问策略。
当尝试在浏览器中以交互方式访问 Web 应用程序时,条件访问策略将按预期应用。
当我尝试使用服务主体以编程方式/非交互方式(客户端凭据授予/流)获取同一应用程序的访问 token 时,针对该应用程序的条件访问策略似乎不适用,我可以从任何应用程序获取 token 位置以及从任何位置使用它们。
我在 Azure 的条件访问中没有看到任何相关设置,这些设置可以确保策略应用于特定的授权方案/流程或仅应用于交互式流程。
这让我想问是否有人知道条件访问策略是否适用于非交互式执行的此类授权/流程?
最佳答案
I do not see any related settings in Conditional Access within Azure which would ensure policies are applied to specific grant scenarios/flows or just interactive processes.
你是对的。它只能用于用户界面认证。尽管文档中可能没有明确说明。
首先,条件访问有一些要求:
当身份验证尝试来自以下位置时,您可以使用 Azure AD 条件访问来保护云应用:
A web browser
A client app that uses modern authentication
Exchange ActiveSync
使用现代身份验证的客户端应用程序:这基于 ADAL 。因此,它还需要用户登录。
关于Azure 条件访问不适用于 token 获取请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51068681/